aardio不能在webkit内核的网页js里主动执行external.func()接口函数?__计算机编程入门教程

未解决  未打赏  
Admin Admin  悬赏: 100 金币
发布:2018-04-30 22:10:53 分类:问答
先把HTML源码保存到桌面 text.html
<!DOCTYPE>
<html>
<head>
</head>
<body>
<a href="" onclick="external.fun(123)">aarfun</a>
</body>
</html>

然后在webkit内核里打开这个网页,点击链接,为何没能执行external.fun(123)接口函数?
import win.ui;
/*DSG{{*/
var winform = win.form(text="Web Form";right=759;bottom=469)
winform.add()
/*}}*/

//创建web窗体
import web.kit.form;
var wb = web.kit.form( winform,5/*_UIFLAG_DIALOG*/,,,true);

//使用external接口定义网页脚本可调用的本地函数
wb.external = {
func = function( num ){
winform.text = "网页脚本调用aardio函数,参数:" + num
}
}

//打开目标网站
wb.go("file:///C:/Users/Administrator/Desktop/test.html") //在网页里的js里调用external.func(123)----没效果
winform.show(); //显示窗体
wb.wait(""); //等待指定网址,可以使用模式匹配语法

//在网页上执行javascript脚本--这样可以正常
//wb.doScript("external.func(123);")

//启动消息循环
win.loopMessage();

  • Admin Admin    
    Time:2018-04-30 22:46:44
    测试下又可以了....
    //使用external接口定义网页脚本可调用的本地函数
    wb.external = {
    func = function( num ){
    winform.text = "网页脚本调用aardio函数,参数:" + num
    }
    }

    /*****
    wb.html = /**
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <style type="text/css">
    html,body{ height:100%; margin:0; }
    </style>
    <script type="text/javascript"></script>
    </head>
    <body>
    <div id="header"></div>
    <div id="container">
    <div class="lside"> 22222222</div>
    <div class="rside"> </div>
    </div>

    <a href="javascript:external.func(123);" >aarfun</a> <!--这样可以-->
    <a href="javascript:aar();" >aarfun2</a> <!--这样可以-->
    <a href="/" onclick="external.func(123)" >aarfun3333</a>

    <script type="text/javascript">
    function aar(){
    external.func(123);
    }
    </script>

    </body>
    </html>
    **/
    *****/

    //打开目标网站
    wb.go("file:///C:/Users/Administrator/Desktop/test.html") //在网页里的js里调用external.func(123)----没效果,因为用file:///加载的js没在同一个作用域下
    winform.show(); //显示窗体
    wb.wait(""); //等待指定网址,可以使用模式匹配语法

    //在网页上执行javascript脚本--这样可以正常
    //wb.doScript("external.func(123);")

    //启动消息循环
    win.loopMessage();

    html:
    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <style type="text/css">
    html,body{ height:100%; margin:0; }
    </style>
    <script type="text/javascript"></script>
    </head>
    <body>
    <div id="header"></div>
    <div id="container">
    <div class="lside"> 22222222</div>
    <div class="rside"> </div>
    </div>

    <a href="javascript:external.func(123);" >aarfun</a> <!--这样可以-->
    <a href="javascript:aar();" >aarfun2</a> <!--这样可以-->
    <a onclick="external.func(123)" >aarfun3333</a> <!--这样可以-->
    <script type="text/javascript">
    function aar(){
    external.func(123);
    }
    </script>

    </body>
    </html>



  • Admin Admin    
    Time:2018-05-01 07:48:24
    一大早起来做DEMO测试,发现怎么折腾都是可以执行的,然后把项目里的 wb.external = { } 放到前面,成了.
    var 打开所选节点;

    //创建web窗体
    var wb = web.kit.form( winform,5/*_UIFLAG_DIALOG*/,,,true);//custom

    //开放aar的winform对象给网页js调用
    //web.kit.export("winform",winform)

    //创建external接口共享空间,网页脚本可调用AAR接口里的函数
    wb.external = {

    func = function( num ){
    //winform.text = "网页脚本调用aardio函数,参数:" + num
    winform.msgbox("双击调用了func函数")
    }

    //网页双击节点时在js中调用aar打开节点
    aarOpenNode = function(){
    //winform.msgbox("双击调用了aarOpenNode函数")
    打开所选节点();
    }

    }
    wb.doScript(js)里的js放
    //alert("myjs,网页双击了");
    //网页双击节点时在js中调用aar打开节点 --可以执行了
    //external.func(123);
    external.aarOpenNode();
    可以执行了.
[ 发单/接单 ]
换IP投票软件
PC蛋蛋自动挂机投注
新浪微博发微博显示尾巴的方法,比如显示来自iphone 7
百度文库批量自动上传软件
一点资讯app刷阅读量/评论/收藏/订阅功能/手机号注册
定做一个阿迪达斯官网注册器(需要破点击文字式验证码)
定制人人网自动注册/修改资料/采集/私聊软件
酷狗繁星直播网页协yi
YY多功能刷订阅刷粉丝
滑块验证码本地识别
狼人杀POST QQ登录注册 获取金币数量
做个贴吧发发帖的软件懂的来
今日头条账号保存cookie
抖音粉丝软件定做,只要粉丝
百家号自媒体发文软件定制
哔哩哔哩播放量
读取TB某个商品上架时间和相关信息
网易博客软件定制
定制天涯论坛发帖软件
定制今日头条批量自动发私信软件
[ 站内搜索 ]
[ 最近热帖 ]
万能助手 -- 扩展库大全集 13742
用aardio创建web工程图文讲解(1) 12824
电脑编程入门自学:Fiddler https 抓包时提示创建根证书不成功问题彻底解决(https插件dll方式) 11731
aardio绘图演示 11399
通过chrome.dll中间件控制外部chrome浏览器 10113
我常用的aardio技巧 9764
《边学C语言边赚钱——简码编程入门教程》系列集合 9608
aardio使用http或whttp进行get/post请求时经常cookies失效怎么办?__电脑计算机编程入门教程自学 9316
[源码下载]简码视频加密解密播放工具个人版v1.0发布,永久免费开源的知识变现神器 8552
python人工智能爬虫系列:怎么查看python版本_电脑计算机编程入门教程自学 8042
编程入门教程:aardio批量上传文件并显示进度条 7876
aardio调用nodejs的ws模块做一个简单的聊天通信示例 7030
电脑计算机编程入门教程自学:原生JavaScript判断字符是否为A-Za-z英文字母 6902
电脑计算机编程入门教程自学:腾讯tx或极验geetest滑块按住拖动完成拼图验证成功破解思路及源码 6496
乐玩插件AARDIO调用 6079
[ 近期热答 ]
电脑计算机编程入门教程自学:什么是buffer缓冲区? 1
aardio_代码编辑框书签管理器开源 1
aardio_怎么用ide库从代码编辑框中取出指定行的源码? 1
aardio_codepage代码页编码乱码暴力猜解工具 1
aardio内嵌echarts图表添加鼠标事件响应功能 2
aardio列表框listbox_模糊查找和精确查找 1
8亿QQ绑定手机泄露:通过腾讯QQ号查询QQ绑定的手机号码漏洞! 1
carl listviewex调用例子----------源码搬运工 2
Aardio内嵌Electron浏览框怎么正确添加启动参数? 1
Aardio取汉字的字节数或字符数 1
怎么实现mssql图片数据的读写 2
aardio_从49个数字里选六个和值为150的不重复的数字 1
在嵌入wps的时候,多了一个 透明的边框,这个怎么消除它 1
万能助手入门帮助教程:学会科学地管理工作文件 1
Aaardio开发内嵌Electron浏览框放服务器上无法下载组件的解决办法 1