JavaScript 浏览器检测

var agent = window.navigator.userAgent.toLowerCase();
var is_op = (agent.indexOf("opera") != -1);
var is_ie = (agent.indexOf("msie") != -1) && document.all && !is_op;
var is_ch = (agent.indexOf("chrome") != -1);
以上代码中indexOf的作用是什么?

3个回答

正如你看到的,使用userAgent.navigator的问题在于,它是一串很长的字符串,并且可读性不好。

所以,如果我想得到想要的信息,或者把它给用户看,我首先,我要解析这个字符串。问题是我对于正则表达式的使用(在其他一些方面)显得无能为力,所以我很乐意使用Darcy Clarke写的Detect.js JavaScript 程序库。

Detect.js能够将一个字符串解析为一个可读和可操作的JavaScript对象。为了显示浏览器的名称、版本以及所用的操作系统,可参考如下代码:......<br/><strong>答案就在这里:</strong><a target='_blank' rel='nofollow' href='http://blog.csdn.net/u011043843/article/details/36868321'>用JavaScript检测浏览器</a><br/>----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
就会根据判断agent中是否包含的各个浏览器的名称来判断浏览器的。
具体用法参考:http://www.w3school.com.cn/jsref/jsref_indexOf.asp

查找字符串出现的位置(从0开始),找不到返回-1

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐