【发布时间】:2019-10-12 23:58:16
【问题描述】:
目标:悬停时 - 在 div 内向下滚动。当悬停停止时 - 停止在 div 内滚动。这是我尝试过的。这有效,只是每次鼠标悬停在#down1 上时它只会向下悬停 150 像素。所以它不是连续的。有任何想法吗?
hovered = false;
$("#down1").on({
mouseenter: function() {
hover = true;
if (hover = true) {
var y = $('#avoidOptions').scrollTop(); //your current y position on the page
$('#avoidOptions').scrollTop(y + 150);
}
},
mouseleave: function() {
hover = false;
}
});
.scrollingOptions {
height: 30vh;
width: 100%;
overflow: auto;
z-index: 1000;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class='scrollingOptions' id='avoidOptions'>
<p class='likeavoid avoid1'>1
</p>
<p class='likeavoid avoid2'>2
</p>
<p class='likeavoid avoid3'>3
</p>
<p class='likeavoid avoid4'>4
</p>
<p class='likeavoid avoid5'>5
</p>
<p class='likeavoid avoid6'>6
</p>
<p class='likeavoid avoid7'>7
</p>
<p class='likeavoid avoid8'>8
</p>
<p class='likeavoid avoid9'>9
</p>
<p class='likeavoid avoid10'>10
</p>
<p class='likeavoid avoid11'>11
</p>
<br>
</div>
<p class='white text-center' id='down1'> Scroll Down - Hover Here</p>
【问题讨论】:
-
请发布一整套可重现此问题的工作代码和 HTML,以便我们最好地为您提供明确的解决方案
-
例如,您的
hovered = false;不在其他任何地方引用 -
刚刚添加完毕:)
标签: javascript jquery scroll