亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

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

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

瀏覽:101日期: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
相關文章:
主站蜘蛛池模板: 美女视频一区二区三区在线 | 国产精品久久久久a影院 | 99精品福利视频 | 男女配种猛烈免费视频 | 韩国精品视频在线观看 | 手机看片日韩国产 | 亚洲国产成人精品一区二区三区 | 亚洲性色视频 | 亚洲va中文字幕欧美不卡 | 视频日韩| 国产免费一区二区三区免费视频 | 欧美色视频日本片高清在线观看 | 国产成人亚洲综合网站不卡 | 中文字幕亚洲区 | 亚欧美图片自偷自拍另类 | 亚洲欧美视频一级 | 久久精品一区二区国产 | 国产色手机在线观看播放 | 香蕉久久高清国产精品免费 | 国产一区二区在线观看免费 | 在线亚洲观看 | 国产免费a级片 | 欧美高清亚洲欧美一区h | 高清亚洲 | 成人看片黄a毛片 | 国产一区三区二区中文在线 | 九九在线精品视频xxx | 欧美牛逼aa | 国产亚洲欧美在线视频 | 亚洲国产三级在线观看 | 亚洲精品一区二区三区不卡 | 99欧美视频| 深夜爽爽福利gif在线观看 | 国产在线视频网址 | 欧美视频免费一区二区三区 | 久久久精品久久久久久久久久久 | 亚洲精品一区二区观看 | 亚洲成a人片在线观 | 国产精品久久久久久免费 | 欧美日韩中 | 亚洲免费成人 |