用JS写一段判断搜索引擎来路并且屏蔽PC的跳转代码

 更新时间:2023年12月19日 18:33:11   投稿:mdxy-dxy  
以下是用JS写的判断搜索引擎来路并屏蔽PC跳转的代码,需要的朋友可以参考下

代码中使用了两个函数 isSearchEngineReferrer() 和 isPcDevice() 来判断搜索引擎来路和PC设备,当满足条件时就会调用 blockPcRedirect() 函数来屏蔽PC跳转。最后在页面加载时调用这些函数。

// 判断是否为搜索引擎来路
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设备
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跳转
function blockPcRedirect() {
  if (isPcDevice()) {
    window.location.href = "about:blank";
  }
}

// 在页面加载时调用
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;
}

增加了更多的搜索引擎判断,具体的大家可以根据自己的需要进行添加即可。

相关文章

  • javascript显示倒计时控制按钮的简单实现

    javascript显示倒计时控制按钮的简单实现

    下面小编就为大家带来一篇javascript显示倒计时控制按钮的简单实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • 30分钟快速掌握Bootstrap框架

    30分钟快速掌握Bootstrap框架

    Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。接下来通过本文给大家介绍如何快速掌握Bootstrap,感兴趣的朋友一起学习吧
    2016-05-05
  • 使用echarts实现3d柱状图+折线图

    使用echarts实现3d柱状图+折线图

    这篇文章主要为大家详细介绍了如何使用echarts实现3d柱状图和折线图,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以了解一下
    2024-12-12
  • JavaScript数据结构之二叉查找树的定义与表示方法

    JavaScript数据结构之二叉查找树的定义与表示方法

    这篇文章主要介绍了JavaScript数据结构之二叉查找树的定义与表示方法,简单讲述了二叉查找树的概念、特点及javascript针对二叉查找树的创建、插入、遍历等操作相关实现技巧,需要的朋友可以参考下
    2017-04-04
  • 浅析JS获取url中的参数实例代码

    浅析JS获取url中的参数实例代码

    本文给大家介绍js获取url中的参数实例代码,通过取得整个地址栏,取得所有参数以及各个参数放到数组里,代码比较简单,有需要的朋友可以参考下
    2016-06-06
  • 分析javascript中9 个常见错误阻碍你进步

    分析javascript中9 个常见错误阻碍你进步

    这篇文章主要介绍了分析javascript中9 个常见错误阻碍你进步的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • js实现弹幕墙效果

    js实现弹幕墙效果

    这篇文章主要为大家详细介绍了js实现弹幕墙效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-12-12
  • Bootstrap面板学习使用

    Bootstrap面板学习使用

    这篇文章主要为大家详细介绍了Bootstrap面板的学习使用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • JavaScript中的16进制字符介绍

    JavaScript中的16进制字符介绍

    最早接触到\unnn之类的字符是在微软的官网上。当时在网上找了一下这中字符格式,却不知道该搜什么
    2011-10-10
  • js模拟电脑选择多文件夹效果_选区代码

    js模拟电脑选择多文件夹效果_选区代码

    模仿选择文件夹效果的javascript封装类,效果不错,实际应用呢,暂时用不到,大家可以学习思路
    2008-09-09

最新评论