可以添加或修改超链接的onclick属性拦截点击事件,交给external接口去处理。。。
示例代码:
import win.ui;
/*DSG{{*/
var winform = win.form(text="Web Form";right=759;bottom=469)
winform.add()
/*}}*/
import console
winform.show();
//创建web窗体
import web.form
var wb = web.form(winform)
//使用external接口定义网页脚本可调用的本地函数
wb.external = {
onclick = function(v){
..console.log("onclick", v)
}
}
wb.html = /**
<html>
<body>
<a onclick="alert('hello');">baidu</a>
<a >QQ</a>
</body>
</html>
**/
for i,ele in wb.eachLinks(){
//ele.outerHTML = ..string.replace(ele.outerHTML, `(\<[aA])`, `\1 onclick="external.onclick(this.href);return false;"`)
ele.setAttribute("onclick", "external.onclick(this.href);return false;")
ele.outerHTML = ele.outerHTML
..console.log(ele.outerHTML)
}
win.loopMessage()
|