0

是否可以在所有浏览器上执行 javascript 代码,但不能在 chrome 上执行?

我试着到处寻找代码片段,但我只找到浏览器检测代码并且无法一起工作,所以代码不会在 chrome 浏览器上执行:(

任何帮助将不胜感激!

这是我目前拥有的,这会工作吗?

<SCRIPT language="JavaScript">
<!--
var browserName=navigator.appName; 
if (browserName=="Google Chrome")
{ 

}
else 
{ 
 "the code for every other browser here"
   }
}
//-->
</SCRIPT>
4

2 回答 2

0

appName在这种情况下没有帮助,因为它只会"Netscape"在大多数情况下返回。改用appVersion

var isChrome = /Chrome/i.test(navigator.appVersion);
if(!isChrome){
    //stuff for non-Chrome
}

但是,用户可以轻松地覆盖此值,从而导致浏览器检测不可靠。

于 2013-01-19T21:33:16.990 回答
0

运行后console.log(window)我注意到一个对象名称 chrome,我尝试为这个对象测试其他浏览器,它是未定义的

http://jsfiddle.net/aWqSt/1/

if(!window.chrome){
    alert("you are not using google chrome :(");
}else{
    alert("you are using google chrome");
}

考虑到用户没有篡改请求,您很可能对 Derek 或我的示例是安全的,但要确定用户没有使用谷歌浏览器

http://jsfiddle.net/aWqSt/2/

var isChrome = /Chrome/i.test(navigator.appVersion);
if(!window.chrome && !isChrome){
    alert("you are not using google chrome :(");
}else{
    alert("you are using google chrome");
}
于 2013-01-19T21:39:06.273 回答