有没有办法使用cordovas InAppBrowser引用网页上的元素,并按下按钮时,检测?我所引用的页面有一个后退按钮和一个关闭按钮,我需要知道哪一个被按下,然后关闭inAppBrowser。科尔多瓦inappbrowser引用元素
我假设它会是这个样子,但我似乎无法使它工作
var ref = window.open(url, '_blank');
ref.addEventListener('loadstop', function(event) {
ref.executeScript({
code:
"document.getElementById('pageHeader').onclick = function() {
alert('button was clicked');
}"
});
}
是否可以改用:
executeScript({ link: "https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js" });
然后使用jQuery?
executeScript({ code: "$('#pageHeader').on('click', function() { alert('button was clicked'); }"});
虽然'InAppBrowser'插件可以让你运行得离谱在显示的页面上,就像在你的问题中一样,如果页面不是你的,那么这将不起作用。不属于你的应用程序),因为你会得到一个权限错误。这很讽刺,因为InAppBrowser插件最常见的用途是显示不属于App本身的页面,所以'executeScript'方法几乎没有用处。 –
@RacilHilan Ahh,你知道当我点击一个后退按钮时是否有一种方法可以参考吗? executeScript之外? – DanceSC
不,对不起,否则我会将它发布在答案中:-)。我认为没有办法做到这一点。 'executeScript'有一个X按钮来关闭它,如果你不喜欢它,你可以修改它的外观。对于iOS来说,这是标准风格,我不认为你可以改变它,但它看起来不错。 –