我正在使用 SmoothDivScroll 并且它运行良好,直到我尝试异步加载所有 JS 文件。我使用 Ryan Grove 的Lazyload.js使用我自己的异步加载模式,但可以肯定的是,我还使用Modernizr的加载/完成模式进行了测试,并得到了相同的结果。我使用来自SmoothDivScroll 主页的快速演示部分的副本进行了测试,并添加了 Modernizr。没有 Modernizr,这很好,但是当我将 Modernizr 及其加载/完成模式添加到头部,并在结束体标记之前注释掉所有 JS 时,它不再工作了。当您将鼠标悬停在右箭头上时,没有任何反应,而将鼠标悬停在左箭头上会导致图像闪烁。无论哪种方式,它都应该以相同的方式工作。Moderizr 块应该等同于它下面的所有块:
<script type="text/javascript">
Modernizr.load([ {
load: [
'//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.js',
'/js/jquery-ui-1.8.23.custom.min.js',
'/js/jquery.mousewheel.min.js',
'/js/jquery.kinetic.js',
'/js/jquery.smoothdivscroll-1.3-min.js'
],
complete:
function () {
$(document).ready(function () {
$("#makeMeScrollable").smoothDivScroll({
mousewheelScrolling: "allDirections",
manualContinuousScrolling: true,
autoScrollingMode: "onStart"
});
});
}
}
]);
</script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>
<script src="/js/jquery-ui-1.8.23.custom.min.js" type="text/javascript"></script>
<script src="/js/jquery.mousewheel.min.js" type="text/javascript"></script>
<script src="/js/jquery.kinetic.js" type="text/javascript"></script>
<script src="/js/jquery.smoothdivscroll-1.3-min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#makeMeScrollable").smoothDivScroll({
mousewheelScrolling: "allDirections",
manualContinuousScrolling: true,
autoScrollingMode: "onStart"
});
});
</script>