我将jQuery从1.3.2更新到最新的2.1.0
现在我注意到我的页面上出现此错误:
TypeError: Cannot read property 'safari' of undefined
这是我的代码:
if(p=='marginRight'&&$.browser.safari)
和
if($.browser.safari){this.buttons(false,false);
我从1.9版本中看到。$ .browser已被删除,有人可以请求帮助,如何解决这个问题?我用谷歌搜索并尝试了一些东西,但似乎没有找到正确的东西..
谢谢
答案 0 :(得分:1)
您可以通过原生navigator
对象
if(navigator.userAgent.indexOf("Safari") > -1) {
// safari
}
答案 1 :(得分:1)
最简单的方法是只包含jquery-migrate。这会修补他们删除的所有功能。
否则,您必须重写代码以避免浏览器检测。通常,建议使用功能检测而不是浏览器嗅探。
答案 2 :(得分:0)
自jQuery 1.3和jQuery以来,jQuery.browser()方法已被弃用 在1.9中删除。如果需要,它可以作为jQuery的一部分使用 迁移插件。我们建议对库使用特征检测 比如Modernizr。
参考:http://jquery.com/upgrade-guide/1.9/#jquery-browser-removed
由于它已删除,因此您最简单的选择是使用jquery migrate