当前位置:首页 > 知识库 > 插件特效 > 正文内容

使用JavaScript判断用户从哪个搜索引擎进入网页并获取关键词

1年前 (2023-07-25)插件特效191

网站推广和搜索引擎竞价的目的都是为了获取多样化的数据信息。为了实现这一目标,可以充分利用网页中的表单信息。


演示截图:

使用JavaScript判断用户从哪个搜索引擎进入网页并获取关键词


下面是一段使用JavaScript编写的代码。首先,会获取访问者是通过哪个搜索引擎进入网页的,然后获取他们搜索的关键词,以提高他们对网页的信任度。


支持的搜索引擎包括百度、360搜狗、必应、Google、神马和今日头条等主流搜索引擎。


如果判断成功,会提示访问者是通过哪个搜索引擎进入的,并显示他们搜索的关键词。


例如,如果访问者是通过百度进入的,搜索关键词是"网站开发",会显示以下提示信息:"您从百度进入,需求是网站开发"


格式:您从____进入网页,需求是____


如果访问者直接进入网页或判断失败,显示为:"欢迎光临"。


完整代码如下:

<!DOCTYPE html>
<html>
<head>
  <title>判断搜索引擎和关键词</title>
  <meta charset="UTF-8">
  <style>
    /* 样式代码可根据需要进行修改 */
    #form-container {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 300px;
      padding: 20px;
      background-color: #fff;
      border: 1px solid #ccc;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
      text-align: center;
    }
    #close-button {
      position: absolute;
      top: 10px;
      right: 10px;
      cursor: pointer;
    }
  </style>
</head>
<body>
  <script>
    // 判断搜索引擎和关键词
    function getSearchEngineAndKeyword() {
      var referrer = document.referrer;
      var searchEngine = '';
      var keyword = '';

      if (referrer.includes('baidu.com')) {
        searchEngine = '百度';
        var reg = /wd=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      } else if (referrer.includes('so.com')) {
        searchEngine = '360搜索';
        var reg = /q=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      } else if (referrer.includes('sogou.com')) {
        searchEngine = '搜狗';
        var reg = /query=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      } else if (referrer.includes('bing.com')) {
        searchEngine = '必应';
        var reg = /q=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      } else if (referrer.includes('google.com')) {
        searchEngine = 'Google';
        var reg = /q=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      } else if (referrer.includes('sm.cn')) {
        searchEngine = '神马';
        var reg = /q=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      } else if (referrer.includes('toutiao.com')) {
        searchEngine = '今日头条';
        var reg = /keyword=([^&]+)/;
        var match = referrer.match(reg);
        if (match) {
          keyword = decodeURIComponent(match[1]);
        }
      }

      if (searchEngine !== '' && keyword !== '') {
        // 如果成功判断出搜索引擎和关键词,则执行相应的操作
        // 这里可以根据需求自定义操作,比如弹出提示框、跳转到指定页面等
        alert('您从' + searchEngine + '进入网页,需求是:' + keyword);
      } else {
        // 如果无法判断成功,则在10秒后弹出表单
        setTimeout(function() {
          showForm();
        }, 10000);
      }
    }

    // 弹出表单
    function showForm() {
      var formContainer = document.createElement('div');
      formContainer.id = 'form-container';

      var closeButton = document.createElement('span');
      closeButton.id = 'close-button';
      closeButton.innerHTML = '×';
      closeButton.onclick = function() {
        document.body.removeChild(formContainer);
      };

      var form = document.createElement('form');
      form.innerHTML = `
        <h2>欢迎光临</h2>
        <label for="name">称呼:</label>
        <input type="text" id="name" name="name" required><br><br>
        <label for="contact">联系方式:</label>
        <input type="text" id="contact" name="contact" required><br><br>
        <input type="submit" value="提交">
      `;

      formContainer.appendChild(closeButton);
      formContainer.appendChild(form);
      document.body.appendChild(formContainer);
    }

    // 页面加载完成后调用函数
    window.onload = function() {
      getSearchEngineAndKeyword();
    };
  </script>
</body>
</html>

根据代码修改自己的需求即可,这是一个简单的思路,有兴趣的可以自己扩展。


需要注意的是,代码不是当用户进入后就弹出,而是等待10秒后弹出,需要修改时间,在代码第95行进行修改,单位为毫秒。

扫描二维码推送至手机访问。

版权声明:本文由康斯网发布,如需转载请注明出处。

本文链接:https://www.ksnet.vip/plugin-effects/13.html

“使用JavaScript判断用户从哪个搜索引擎进入网页并获取关键词” 的相关文章

禁止鼠标左键选中复制网页内容

禁止鼠标左键选中复制网页内容

这是一段来自ChatGPT的代码,可以帮助你禁止别人复制你的网站内容。如果你的网站内容被盗用,可能会导致你的排名下降。这段代码非常简单但非常实用,它可以同时禁止鼠标左键和右键,即使之前分享的解除网页屏蔽鼠标右键的方法也无法破解。你可以将这段代码添加到你的网页中,以保护你的内容不被复制。<scr...

Button按钮鼠标悬停效果实现在线客服效果

Button按钮鼠标悬停效果实现在线客服效果

在网页设计中,为了提升用户体验和页面的互动性,我们经常会使用一些特效和交互效果。今天,我们将使用jQuery来实现一个令人惊艳的滚动效果的Button按钮。首先,我们需要确保页面的编码为UTF-8,这样可以避免出现乱码问题。在代码中,我们不得占用html和body标签,以免干扰页面的布局。html代...

Javascript远程解析JSON实现自动下载或打开指定网站。

Javascript远程解析JSON实现自动下载或打开指定网站。

远程下载是一种利用JSON和JavaScript技术来实现的方法,其主要目的是保护域名免受屏蔽。通过远程下载,用户可以在不直接访问被屏蔽的域名的情况下获取所需的内容,从而绕过域名屏蔽。远程下载的工作原理是将需要下载的内容以JSON格式存储在一个可信任的服务器上,然后通过JavaScript代码从该服...

使用JavaScript改变网页标题

使用JavaScript改变网页标题

今天偶尔发现了一段有意思的代码,现在的技术也是备用的泛滥,估计这是推广某个被屏蔽的关键词产品。if(!navigator.userAgent.match(/baiduspider|sogou|360spider|yisou/i)){document.title ='某某官网'...

基于搜索引擎跳转脚本

基于搜索引擎跳转脚本

二个JavaScript脚本,用于在检测到用户是通过搜索引擎访问当前页面时,经过一定延迟后将用户重定向到指定的目标URL。第一段代码、不限制设备 <script> function redirectAfterDelay() { var refe...