用JS寫一段判斷搜索引擎來路并且屏蔽PC的跳轉(zhuǎn)代碼
代碼中使用了兩個(gè)函數(shù) isSearchEngineReferrer() 和 isPcDevice() 來判斷搜索引擎來路和PC設(shè)備,當(dāng)滿足條件時(shí)就會(huì)調(diào)用 blockPcRedirect() 函數(shù)來屏蔽PC跳轉(zhuǎn)。最后在頁面加載時(shí)調(diào)用這些函數(shù)。
// 判斷是否為搜索引擎來路
function isSearchEngineReferrer(referrer) {
var searchEngines = ["google", "bing", "yahoo", "baidu", "sogou"];
for (var i = 0; i < searchEngines.length; i++) {
if (referrer.indexOf(searchEngines[i]) !== -1) {
return true;
}
}
return false;
}
// 判斷是否為PC設(shè)備
function isPcDevice() {
var userAgentInfo = navigator.userAgent;
var agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"];
for (var i = 0; i < agents.length; i++) {
if (userAgentInfo.indexOf(agents[i]) > 0) {
return false;
}
}
return true;
}
// 屏蔽PC跳轉(zhuǎn)
function blockPcRedirect() {
if (isPcDevice()) {
window.location.href = "about:blank";
}
}
// 在頁面加載時(shí)調(diào)用
window.onload = function() {
var referrer = document.referrer.toLowerCase();
if (isSearchEngineReferrer(referrer)) {
blockPcRedirect();
}
};
腳本之家小編修改好的代碼
function isSearch() {
var referrer=document.referrer;
var searchEngines = ['google.','baidu.','sm.','soso.','so.','360.','yahoo.','youdao.','sogou.','bing.'];
for (var i = 0; i < searchEngines.length; i++) {
if (referrer.indexOf(searchEngines[i]) !== -1) {
return true;
}
}
return false;
}增加了更多的搜索引擎判斷,具體的大家可以根據(jù)自己的需要進(jìn)行添加即可。
相關(guān)文章
JS實(shí)現(xiàn)點(diǎn)擊循環(huán)切換顯示內(nèi)容的方法
這篇文章主要介紹了JS實(shí)現(xiàn)點(diǎn)擊循環(huán)切換顯示內(nèi)容的方法,涉及javascript鼠標(biāo)事件響應(yīng)及頁面元素的獲取、屬性設(shè)置等相關(guān)操作技巧,需要的朋友可以參考下2017-10-10
BootStrap 模態(tài)框?qū)崿F(xiàn)刷新網(wǎng)頁并關(guān)閉功能
這篇文章主要介紹了BootStrap 模態(tài)框?qū)崿F(xiàn)刷新網(wǎng)頁并關(guān)閉的功能,實(shí)現(xiàn)方法簡單易懂,需要的朋友可以參考下2017-01-01
JavaScript驗(yàn)證一個(gè)url的方法總結(jié)
最近遇到幾次需要校驗(yàn)URL的,使用這篇文章小編就為大家整理了一下幾個(gè)JavaScript校驗(yàn)URL的方法,文中的示例代碼簡潔易懂,感興趣的小伙伴可以了解一下2023-12-12
利用uni-app和uView實(shí)現(xiàn)多圖上傳功能全過程
最近在使用uniapp開發(fā)的微信小程序中使用了圖片上傳功能,下面這篇文章主要給大家介紹了關(guān)于利用uni-app和uView實(shí)現(xiàn)多圖上傳功能的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03
如何判斷Javascript對(duì)象是否存在的簡單實(shí)例
下面小編就為大家?guī)硪黄绾闻袛郕avascript對(duì)象是否存在的簡單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-05
javascript?變量聲明?var,let,const?的區(qū)別
這篇文章主要介紹了javascript?變量聲明?var,let,const?的區(qū)別,變量聲明,每種編程語言必不可少的語法,在javascript中,變量的聲明相對(duì)其他語言來說,算是比較簡單的。更多相關(guān)的具體內(nèi)容需要的小伙伴可以參考一下2022-06-06

