Jquery Carousel收到错误:“无法读取未定义的属性'safari'”

时间:2014-05-12 11:11:28

标签: javascript jquery jquery-ui jquery-plugins carousel

我在dev目录中安装了我的网站的副本,并发现jQuery Carousel不再有效。

我现在收到错误:

Uncaught TypeError: Cannot read property 'safari' of undefined

我在Chrome和Firefox上测试时,我不明白这一点。

此外,在网站的生产版本上没有发生此错误 - 只有开发版本。

我更新了jQuery,jQuery-UI和jQuery Carousel的版本以及测试所有文件是否存在但问题仍然存在。

有人知道发生了什么以及如何解决这个问题吗?

我的轮播代码是:

jQuery(document).ready(function($){
    $('#mycarousel').jcarousel({
      vertical: true,
      scroll: 2
    });
  });

如果有人想要查看网站的开发版本: http://www.dev.wakeup.com.au/

1 个答案:

答案 0 :(得分:4)

问题可能是该插件使用$.browser。 这已在jQuery版本1.9中弃用和删除,如其升级日志中所述: http://api.jquery.com/jquery.browser/

  

描述:包含useragent的标志,从中读取   navigator.userAgent的。这个属性在jQuery 1.9中删除了   只能通过jQuery.migrate插件获得。请尝试使用   特征检测。

如果是这种情况,插件会使用(皱眉)浏览器嗅探技术来实现跨浏览器的兼容性。

您可以在1.9之前使用jQuery版本测试插件。如果您需要更新版本的jQuery,请查看插件的页面,如果有任何新版本可用于修复与新jQuery版本的这种不兼容性。