有可能有时候我们会用到在百度搜什么关键词进来我们的网站的,所有我们又想拿到用户搜索的关键词。
这是我研究了半天所得出的办法。话不多说直接贴代码
<script> function queryString(parm,parm2){ var url1 = parm2; //indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。 //如果要检索的字符串值没有出现,则该方法返回 -1。 var begin = url1.indexOf("&"+parm+"=")+parm.length+2; if(begin == -1) return ''; url2 = url1.slice(begin); var end = url2.indexOf("&"); if(end == -1){ return url2.slice(0); }else{ return url2.slice(0,end); } } $line='<span>测试</span>'; if(document.referrer){ // 获取上级页面 var url = document.referrer; // 判断是不是百度的域名 if(url.match("www.baidu.com")) { // 第一个参数是百度的get参数wd拼接的关键词 var mywords = queryString("wd",url); if(mywords != '') $line='<span>'+decodeURI(mywords)+'</span>'; // 判断是不是百度手机端 }else if(url.match("m.baidu.com")){ var mywords = queryString("word",url); if(mywords != '') $line='<span>'+decodeURI(mywords)+'</span>'; } } $('#huanw').html($line); </script>
以上代码就是获取百度的搜索关键词,前提是必须是从百度搜索进来到你的网站
此处可以不用复制
if(url.match(/(wap.sogou.com)|(3g.sogou.com)|(m.sogou.com)/)) { var mywords = queryString("keyword",url); if(mywords != '') $line='<i></i>'+decodeURI(mywords); }
可以多域名判断