aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 7695|回复: 9

网页中的object怎么取?

[复制链接]

12

主题

48

回帖

434

积分

二级会员

积分
434
发表于 2012-12-5 15:31:03 | 显示全部楼层 |阅读模式
本帖最后由 csdn321 于 2012-12-6 12:34 编辑

还有在qq网页游戏中的flash对象用网页探针可以探测到,生成的代码在网页探针中点run可以运行,但是复制到程序中就是取不出来,为null,为什么啊?

再具体描述一下:
网址(qq开心泡泡猫游戏):http://my.qzone.qq.com/app/100629468.html?via=appcenter
我是想取到游戏框的大小和位置

用网页探针是可以取到的,在网页探针里运行也是可以的,结果如图:


但是复制到程序中就是取不出来(程序在下面),为null,报错如下:
  1. import win.ui;
  2. /*DSG{{*/
  3. var winform = ..win.form( bottom=399;parent=...;text="aardio Form";right=599;scroll=1 )
  4. winform.add(
  5. button={ bottom=82;text="button";left=456;top=42;z=1;right=531;cls="button" }
  6. )
  7. /*}}*/



  8. import web.form;

  9. //创建web窗体
  10. var wb = web.form( winform
  11.         ,//可输入_UIFLAG_ 前缀的常量自定义外观
  12.         ,//可输入_DLCTL_ 前缀的常量以控制下载行为
  13.         ,//"USER AGENT"
  14.         );

  15. //打开目标网站
  16. wb.go("http://my.qzone.qq.com/app/100629468.html?via=appcenter")
  17. //显示窗体
  18. winform.show();
  19. wb.wait("");//等待指定网址,可以使用模式匹配语法

  20. //创建external接口
  21. //可以通过javascript脚本访问external接口的所有成员
  22. wb.external = {
  23.         func = function( arg )begin
  24.                 console.log("我被网页上的脚本调用了",arg)
  25.         end
  26. }
  27. //在网页上执行javascript脚本
  28. wb.doScript("
  29.         external.func(123);
  30.         ")

  31. winform.button.oncommand = function(id,event){
  32.         //winform.msgbox( winform.button.text );
  33.         /** <OBJECT id=he_swf_holder classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 width=950 height=620><PARAM NAME="_cx" VALUE="25135"><PARAM NAME="_cy" VALUE="16404"><PARAM NAME="FlashVars" VALUE="undefined&amp;gameUrl=http://app100629468.imgcache.qzoneapp.com/app100629468/game/BubblePreLoader.269404.swf&amp;configUrl=http://qa.gip.happyelements.com/gameBlock.jsp?appId8000100905&amp;timeout=30000&amp;appId=7600101120&amp;sessionKey=gip.2f05956f65d72261165dd9ecf073ad16.36000.1354732683-76010512876810&amp;language=zh_CN&amp;languages=[]&amp;platform=tencent_qzone&amp;isNewAppUser=false&amp;prohibition=&amp;snsId=31A2E607AB81DC2BF794F40591592C12&amp;staticServer=http://app100629468.imgcache.qzoneapp.com/app100629468/gip_static&amp;webServer=http://app100629468.qzone.qzoneapp.com/gip_qq&amp;userId=76010512876810&amp;locale=<locale><xmlUrl>http://app100629468.imgcache.qzoneapp.com/app100629468/game/locale/bubble/xml/localeConfig.20121130160723167.xml</xmlUrl><binUrl>http://app100629468.imgcache.qzoneapp.com/app100629468/game/locale/bubble/bin/</binUrl><swfUrl>http://app100629468.imgcache.qzoneapp.com/app100629468/game/locale/bubble/swf/</swfUrl><languages><url>http://app100629468.imgcache.qzoneapp.com/app100629468/game/locale/bubble/swf/</url><zh_TW>zh_TW.all.20121130160723167.swf</zh_TW><ja_JP>ja_JP.all.20121130160723167.swf</ja_JP><zh_CN>zh_CN.all.20121130160723167.swf</zh_CN></languages></locale>&amp;timeCheckPoint=1354696683506"><PARAM NAME="Movie" VALUE="http://app100629468.imgcache.qzoneapp.com/app100629468/gip_static/container/1.0.0/gipcontainer_9.111514.swf"><PARAM NAME="Src" VALUE="http://app100629468.imgcache.qzoneapp.com/app100629468/gip_static/container/1.0.0/gipcontainer_9.111514.swf"><PARAM NAME="WMode" VALUE="Opaque"><PARAM NAME="Play" VALUE="0"><PARAM NAME="Loop" VALUE="-1"><PARAM NAME="Quality" VALUE="High"><PARAM NAME="SAlign" VALUE="LT"><PARAM NAME="Menu" VALUE="-1"><PARAM NAME="Base" VALUE=""><PARAM NAME="AllowScriptAccess" VALUE="always"><PARAM NAME="Scale" VALUE="NoScale"><PARAM NAME="DeviceFont"
  34. VALUE="0"><PARAM NAME="EmbedMovie" VALUE="0"><PARAM NAME="BGColor" VALUE=""><PARAM NAME="SWRemote" VALUE=""><PARAM NAME="MovieData" VALUE=""><PARAM NAME="SeamlessTabbing" VALUE="1"><PARAM NAME="Profile" VALUE="0"><PARAM NAME="ProfileAddress" VALUE=""><PARAM NAME="ProfilePort" VALUE="0"><PARAM NAME="AllowNetworking" VALUE="all"><PARAM NAME="AllowFullScreen" VALUE="true"><PARAM NAME="AllowFullScreenInteractive" VALUE=""></OBJECT> **/
  35. var ele = wb.getEle("he_swf_holder","app_frame")  
  36. import win.util.tray;//导入汽球提示支持库
  37. win.util.tray.pop( ele.value || ele.innerHTML || ele.outerHTML ) //看看节点取的是否正确
  38.        
  39. }

  40. //进入消息循环
  41. win.loopMessage();
  42. return winform,wb;
复制代码

4

主题

852

回帖

4689

积分

荣誉会员

积分
4689
发表于 2012-12-5 15:48:58 | 显示全部楼层
把问题描停清楚,附上可运行可重现问题的代码,
http://bbs.aardio.com/thread-8054-1-1.html

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-5 16:47:45 | 显示全部楼层
不争 发表于 2012-12-5 15:48
把问题描停清楚,附上可运行可重现问题的代码,
http://bbs.aardio.com/thread-8054-1-1.html

我已经描述清楚了,该附上的都附上了。

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-5 16:49:14 | 显示全部楼层
别沉了,顶一下

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-5 22:37:22 | 显示全部楼层
百度空间的图片不能外链啊

9

主题

443

回帖

2546

积分

版主

积分
2546
发表于 2012-12-5 22:56:28 | 显示全部楼层
你可以试试firebug,探针生成的代码只是个向导,实际应用需要修改的。
我看了下似乎嵌套了两层框架,可以试试把框架转换为  web窗体
  1. import web.form.util;
  2. web.form.util.crossDomain();

  3. var wbFrame = wb.getWebForm(框架名字或索引)
复制代码

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-6 09:00:13 | 显示全部楼层
roger 发表于 2012-12-5 22:56
你可以试试firebug,探针生成的代码只是个向导,实际应用需要修改的。
我看了下似乎嵌套了两层框架,可以试 ...

谢谢,我来试试看

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-6 12:04:27 | 显示全部楼层
aardioGame 发表于 2012-12-6 12:00
- -用我的贴图助手贴图片吧。图都废了。

在哪呢?

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-6 12:37:49 | 显示全部楼层
csdn321 发表于 2012-12-6 12:04
在哪呢?

这个工具不错,图片可以看到了!

12

主题

48

回帖

434

积分

二级会员

积分
434
 楼主| 发表于 2012-12-7 13:01:53 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-3-20 02:36 , Processed in 0.064690 second(s), 22 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表