Я хочу, чтобы эффект наведения якоря. Когда я наводил указатель мыши на ссылку, зависший мог прокручиваться сверху, затем вывод мыши, ненаведенный мог снова прокручиваться снизу. Итак, вот мой html-код:
<div class="viewport">
<div class="container">
<a class="scroll hovered" href="#">Hover Now</a>
<a class="scroll nhover" href="#">Not Hover</a>
</div>
</div>
вот мой код jquery:
$(".container").hover(function () {
$(this).animate({
top: '+=22'
}, 800, 'easeInOutBack');
}, function () {
$(this).animate({
top: '-=22'
}, 800, 'easeInOutBack');
});
Затем окончательный результат здесь
но вот проблема, когда я быстро перемещаю мышь по следующей ссылке, предыдущая все еще прокручивается, я хочу предотвратить это, я думаю о функции остановки, поэтому я добавил ".stop()" перед ".animate", так:
$(".container").hover(function () {
$(this).stop().animate({
top: '+=22'
}, 800, 'easeInOutBack');
}, function () {
$(this).stop().animate({
top: '-=22'
}, 800, 'easeInOutBack');
});
Однако результат не работает, как я хотел, когда я быстро перемещаюсь по ссылке, они исчезают, посмотрите здесь< /а>
Почему это произошло? Как я могу решить эту проблему и достичь своей цели? Большое спасибо!