web前端开发中比较头疼的问题,就是浏览器之间的兼容性问题。不仅要涉及IE,谷歌,火狐等这类标准浏览器,有时候还要针对国产浏览器,像360,QQ等这里改造后的浏览器。有时候我们的代码在这些浏览器下运行会出现意想不到的问题。
web前端开发中比较头疼的问题,就是浏览器之间的兼容性问题。不仅要涉及IE,谷歌,火狐等这类标准浏览器,有时候还要针对国产浏览器,像360,QQ等这里改造后的浏览器。有时候我们的代码在这些浏览器下运行会出现意想不到的问题。
为了解决这些问题,我们第一要做的是用代码区分出这些浏览器,然后可以针对浏览器对症下药。
回归到正题,360浏览器在不同的模式下使用的内核不一样,极速的是用chrome的内核,其他的是用ie的内核。但我们无法从内核上去判断是不是360浏览器。那如何做判断?
我在开发中在js在360IE内核浏览器遇到了一个问题:不支持console.log()这个函数。360ie内核浏览器(360安全浏览器)执行js代码的时候遇到console.log()会终止执行代码。利用这个特点我们就可以把它找出来:
360非极速浏览器的判断 代码片段:
function is360b(){//360非极速模式是不支持console.log函数的,而其他浏览器都支持这个函数
var bo = false;
try{
console.log('测试360');
}catch{
bo = true;
}
return bo;
}
最后说明一点,为什么要判断是360非极速模式?主要是因为360IE内核的浏览器出现兼容性的问题几率是比较大的,常常会让我们陷入各种麻烦当中。以上的一些观点或者代码希望能对你有所帮助。
除特别注明外,本站所有文章均为作者原创。 或分享自己的编程经验,或探讨工作中的问题,或聊以人生趣事。 转载请注明出处来自 https://www.qiusuoweb.com/4.html
运营天数
总访问量
文章数量
-
-
-
交流群:157451741
新浪微博:草莽兴
发布评论