webview页面里用windowopen#11 _blank的方法为什么没有检测到当前路由变化
WebView 中的 JavaScript 代码无法直接检测路由变化,因为 WebView 实际上是一个嵌入式浏览器,它与应用程序的其他部分是隔离的。但是,您可以使用 WebView 提供的一些接口来实现这一点。
一种方法是使用 WebView 的 onPageFinished() 回调函数来监视页面加载完成事件。在该回调函数中,您可以使用 JavaScriptInterface 将一个 JavaScript 对象注入到 WebView 中。该对象可以暴露一个方法,该方法将在页面加载完成后被调用。该方法可以检查当前的路由,并将其返回给 WebView。
另一种方法是使用 WebView 的 evaluateJavascript() 方法来执行 JavaScript 代码,并将结果返回给应用程序。您可以编写一段 JavaScript 代码来检查当前的路由,并将其作为字符串返回给应用程序。在应用程序中,您可以解析该字符串并执行相应的操作。
请注意,在使用 WebView 的 evaluateJavascript() 方法时,您需要在页面加载完成后才能执行 JavaScript 代码。否则,您将无法访问页面中的 DOM 元素和变量
原文地址: http://www.cveoy.top/t/topic/gfVi 著作权归作者所有。请勿转载和采集!