亚洲免费在线视频-亚洲啊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
相關文章:
主站蜘蛛池模板: 欧美一级纶理片免费 | www成人国产在线观看网站 | 亚洲伊人色一综合网 | 国产精品大片天天看片 | 欧美日韩日本国产 | 中国一级片免费看 | 免费国产午夜高清在线视频 | 国产精品日本 | 久草视频免费 | 亚洲撸 | 99在线国产视频 | 久久综合精品国产一区二区三区无 | 欧美激情视频一级视频一级毛片 | 日韩欧美精品综合一区二区三区 | 在线观看国产一级强片 | 成人黄色在线观看 | 在线看片 在线播放 | 成人永久福利在线观看不卡 | 一区二区三区视频免费 | 另类视频区第一页 | 日本色网址 | 亚洲免费在线播放 | 亚洲三级一区 | 亚洲一片 | 亚洲第一区视频 | 一级做a爱片特黄在线观看免费看 | 精品欧美一区二区三区精品久久 | 狠狠五月深爱婷婷网 | 中文字幕综合在线 | 99免费在线观看视频 | 中文字幕亚洲欧美日韩不卡 | 欧美牛逼aa | 国产精品爱久久久久久久 | 国内精自品线一区91 | 久草视频播放 | 国产高清精品自在久久 | 久草福利资源网站免费 | 国产精品色午夜视频免费看 | 精品国产美女福利到在线不卡 | 国产成人三级经典中文 | 女人张开双腿让男人桶爽免 |