我有一个JavaScript脚本,它使用jQuery在已加载的WebView中查找页面中元素的位置。
由于某种原因,该脚本仅在某些时候起作用,我怀疑它与加载脚本或页面所需的时间有关。
我试图仅在onPageFinished
界面的WebViewClient
上评估脚本,因此我认为页面的加载与之无关,但也许我错了。
我是一名Android开发人员,对JavaScript和jQuery的了解非常有限,但是我知道该脚本可以工作,因为iOS平台中使用了相同的脚本,并且总是返回良好的结果。
加载脚本本身可能存在一些计时问题。
所以问题是:有没有办法在使用脚本之前先加载脚本,或者先加载脚本并确保将其加载到WebView中。
最佳答案
每当您调用script标记时,都会加载脚本。
它们将保持加载状态,直到该页面被破坏为止。
它们可以通过任何页面访问。
如果我的想法是正确的,我相信您的问题的直接答案是“是”。但是您想知道如何。
在网页中,您可以检查脚本是否加载了jQuery,将这段代码放在您的代码末尾
$(function() {
//anything here is executed after page is loaded
});
如果您试图在页面上执行javascript,而您无法控制它的源代码,那么由于网络标准的安全规则,恐怕您无法做您想要的事情...您将不得不对其进行破解无论如何,我无能为力。