我使用了autoScrollingMode选项:“always”但是当用户将鼠标移到左侧或右侧热点或使用鼠标滚轮时,autoScrolling仍然停止。与描述相反,热点未被禁用。如何在不停止的情况下自动滚动。她是我的代码:
<script type="text/javascript">
$(document).ready(function() {
$("#makeMeScrollable").smoothDivScroll({
mousewheelScrolling: true,
manualContinuousScrolling: true,
visibleHotSpotBackgrounds: "onstart",
autoScrollingMode: "always",
hotSpotScrollingStep: "5",
hotSpotsVisibleTime: "2000"
});
});
</script>
感谢您的帮助,Afrikpit
答案 0 :(得分:0)
如果您想进行自动滚动,则此设置应该足够了:
<script type="text/javascript">
$(document).ready(function() {
$("#makeMeScrollable").smoothDivScroll({
autoScrollingMode: "always"
});
});
</script>
这意味着滚动条将始终自动滚动而不会受到用户的干扰。或者您是否寻找不同的设置?
答案 1 :(得分:0)
使用autoScrollingMode:“onStart”
答案 2 :(得分:0)
好的,我已经通过编辑源来修复它以禁用鼠标滚轮滚动。
在jquery.smoothDivScroll.js的第337-355行(不是.min.js)中,我注释掉了所有self.stopAutoScrolling();
和self.move(pixels);
行:
if (o.mousewheelScrolling === "vertical" && deltaY !== 0) {
// Stop any ongoing auto scrolling if it's running
// self.stopAutoScrolling();
event.preventDefault();
// pixels = Math.round((o.mousewheelScrollingStep * deltaY) * -1);
// self.move(pixels);
} else if (o.mousewheelScrolling === "horizontal" && deltaX !== 0) {
// Stop any ongoing auto scrolling if it's running
// self.stopAutoScrolling();
event.preventDefault();
// pixels = Math.round((o.mousewheelScrollingStep * deltaX) * -1);
// self.move(pixels);
} else if (o.mousewheelScrolling === "allDirections") {
// Stop any ongoing auto scrolling if it's running
// self.stopAutoScrolling();
event.preventDefault();
// pixels = Math.round((o.mousewheelScrollingStep * delta) * -1);
// self.move(pixels);
}
然后我将第364行改为:
el.data("scrollingHotSpotLeft").add(el.data("scrollingHotSpotRight")).add(el.data("scrollWrapper")).mousewheel(function (event) {
我刚添加了.add(el.data("scrollWrapper"))
部分,也禁用了整个区域的鼠标滚轮。
这样做会让它滚动得快一点,所以我不得不调整我的autoScrollingInterval
设置,但无论如何它似乎都禁用鼠标滚轮滚动。顶部的默认设置是禁用热点滚动的良好开端(我在jquery.smoothDivScroll.js顶部的选项中默认禁用它,并且看不到任何热点)。
然后将代码缩减回jquery.smoothDivScroll.min.js文件,然后设置。最后,我的配置如下所示:
$(document).ready(function() {
$("div#makeMeScrollable").smoothDivScroll({
manualContinuousScrolling: true,
autoScrollingMode: "always",
autoScrollingInterval: 80,
autoScrollingDirection: "endlessLoopRight",
autoScrollingStep: 1,
hotSpotScrolling: false,
mousewheelScrolling: "",
touchScrolling: false
});
});