午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

javascript - Android 的 webview 中怎么監聽 url 的 hash 變化

瀏覽:156日期:2024-02-19 14:23:11

問題描述

場景

Android 的 webview 中加載一個 SPA (單頁面應用)網站

過程

我通過 shouldoverrideurl 方法來監聽 Webview 的 URL,對 URL 進行某些預處理

但是,SPA 中大部分是 hash 值變化,因此這個方法就監聽不到變化

舉例

從 a.html#/home 跳轉到 a.html#/other

問題

請問有什么辦法監聽 hash 值的變化嗎?

問題解答

回答1:

只能通過 HTML5 新增加的 window.onhashchange() API。shouldoverrideurl 應該監聽不到吧。

如果你不想修改 js 代碼,可以在 java 中注入:

定義一個處理 js 的類:

private class MyJSI { public void doStuff() {// 你的邏輯 }}

注入到 webview 中:

webView.addJavascriptInterface(new MyJSI(), 'myjsi');

監聽 onhashchange 事件:

webview.setWebViewClient(new WebViewClient() { public void onPageFinished(WebView view, String url) {view.loadUrl('javascript:window.onhashchange = function() { myjsi.doStuff(); };'); }});

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 成人在线毛片 | 黄色在线观看国产 | 日韩一区二区三区在线播放 | 亚洲性在线| 狠狠搞狠狠搞 | 亚洲一区久久久 | 午夜在线视频观看 | 91婷婷色| 国产伦精品一区二区三区免.费 | 色综合天天综合综合国产 | 亚欧精品在线 | 一本到在线视频 | 成人av网站在线观看 | 亚洲欧洲成人 | 一区二区播放 | 日韩欧美黄色 | 一级黄色淫片 | 亚洲综合精品在线 | 韩国黄色网址 | 神马一区二区三区 | 天堂av中文在线 | av免费网址 | 色综合日韩 | 亚洲欧美日本在线 | 国内毛片视频 | 久久性片 | 一区二区三区在线免费观看视频 | 亚洲国产午夜 | 永久免费看片在线观看 | 一区二区三区在线观看 | 天天干天天干天天干 | 欧美日韩在线网站 | 久久久免费高清视频 | 久久男女| 精品一区二区在线观看 | 国产91精品久久久久 | 97视频国产 | 色女人av | 中文字幕一区二区不卡 | 欧美激情影院 | 日本亚洲欧美在线 |