2

smoothDivScroll 1.3 如果在$(window).load(). 看到这个jsFiddle

.load() 事件处理程序已弃用,因此我尝试使用imagesLoaded jQuery 插件,如下所示:

(function ($) { if($('.scroller').length)
    $('.scroller').imagesLoaded(function() {
        $('.scroller').smoothDivScroll({});
    });
})(jQuery);

但这在 Safari、Chrome 和 Opera 中也失败了。这些浏览器的控制台中不会显示任何错误。虽然它在 Firefox 中有效。浏览器版本是最新的。

任何想法为什么会失败?

4

1 回答 1

0

您粘贴的代码段失败,因为.scroller执行该函数时不一定会加载,因此返回length0。只需将其放在$(document).ready处理程序中即可。或简称:

$(function() {
    $('.scroller').smoothDivScroll({});
});

JSFiddle 为您添加了这一点,但是在您的脚本中,您需要将依赖于 DOM 元素的代码包装到这样的函数中。

于 2013-04-07T20:02:55.010 回答