javascript實現(xiàn)阻止iOS APP中的鏈接打開Safari瀏覽器
上次根據(jù)網(wǎng)上的教程給自己的網(wǎng)站弄了一個Web APP,但是給用戶的感覺卻十分糟糕。
問題說明:
怎么了?原來是打開WEB APP后在主頁上隨意打開連接,就會自作主張地打開Safari瀏覽器。原來好好的偽裝和心情就全被破壞掉了。這該如何是好?原來解決方法十分簡單。僅僅加入這些代碼就好了。實驗測試在本人的 iPhone (iOS 7.1)和iPod (iOS 6.1.4)上測試通過,根據(jù)原作者的敘述,最新的 iOS 7.0.4(iPhone 與 iPad)測試通過,代碼應(yīng)該兼容性不錯,在這里分享:
問題解決:
<script type=“text/javascript”>
//iOS Web APP中點擊鏈接跳轉(zhuǎn)到Safari 瀏覽器新標簽頁的問題
if ((“standalone” in window.navigator) && window.navigator.standalone) {
var noddy, remotes = false;
document.addEventListener(‘click',
function(event) {
noddy = event.target;
while (noddy.nodeName !== “A” && noddy.nodeName !== “HTML”) {
noddy = noddy.parentNode;
}
if (‘href' in noddy && noddy.href.indexOf(‘http') !== -1 && (noddy.href.indexOf(document.location.host) !== -1 || remotes)) {
event.preventDefault();
document.location.href = noddy.href;
}
},
false);
}
</script>
建議將代碼放到/head標簽前,當(dāng)然,另外存為一個js 文件引用也是可以的。
相關(guān)文章
Highcharts使用簡例及異步動態(tài)讀取數(shù)據(jù)
Highcharts 是一個用純JavaScript編寫的一個圖表庫, 能夠很簡單便捷的在web網(wǎng)站或是web應(yīng)用程序添加有交互性的圖表,并且免費提供給個人學(xué)習(xí)、個人網(wǎng)站和非商業(yè)用途使用,通過本文給大家介紹Highcharts使用簡例及異步動態(tài)讀取數(shù)據(jù)的相關(guān)知識,感興趣的朋友一起學(xué)習(xí)吧2015-12-12js實現(xiàn)鍵盤操作實現(xiàn)div的移動或改變的原理及代碼
實現(xiàn)鍵盤操作實現(xiàn)div的移動,最關(guān)鍵的一點:獲取div對象,下面有個不錯的示例,大家可以參考下2014-06-06JavaScript中async/await的高級用法小結(jié)
JavaScript的異步編程已經(jīng)從回調(diào)(Callback)演進到Promise,再到如今廣泛使用的async/await語法,本文為大家整理了7個async/await高級用法,希望對大家有所幫助2023-12-128 行 Node.js 代碼實現(xiàn)代理服務(wù)器
JavaScript 前后端通吃,在全棧開發(fā)領(lǐng)域具有獨特的優(yōu)勢。今天就來看看作為服務(wù)端語言的 JavaScript,完成一個簡單的代理服務(wù)器功能是多么容易。2016-12-12