gpt4 book ai didi

javascript - 当新页面加载到 android webview 中时,注入(inject)的 javascript 会发生什么?

转载 作者:行者123 更新时间:2023-12-03 09:43:03 24 4
gpt4 key购买 nike

在 android webview 中加载新页面(使用 loadurl)时,注入(inject)的 javascript 会发生什么?是否被清除或者在新页面仍然有效?它是否取决于新页面是通过编程方式加载还是通过单击 html 页面中的链接加载?如果新页面加载后 javascript 仍然保留在 webview 中,如何清除它?每次页面加载后注入(inject)相同的 JavaScript 是否会使 webview 出现故障且无响应?

最佳答案

将新页面加载到 WebView 中会清除所有以前的 Web 内容和脚本,无论其来源如何,也无论您加载新页面的方式(即,从页面侧导航,或使用 WebView 的 Java) API)。

重新插入的是注入(inject)的 Java 对象(通过 WebView.addJavascriptInterface() 添加),尽管它们的 JavaScript 对应项是从头开始重新创建的。这意味着,如果您在 JavaScript 端向注入(inject)对象添加了自定义属性或方法,它们将会消失。

关于最后一个问题——这很大程度上取决于您注入(inject)的 JavaScript 代码的性质和大小。如果脚本不是很大,并且没有做很多事情,那么注入(inject)它应该足够快并且不会影响页面响应能力。

关于javascript - 当新页面加载到 android webview 中时,注入(inject)的 javascript 会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31130127/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com