提前感谢所有愿意提供帮助的人。我的难题是jQuery中的鼠标输出效果--我正在尝试构建一个函数,它可以在容器内无限期地上下移动元素。悬停时,移动应停止并保持停止,直到光标完全离开元素。但是,发生的事情是mouseover事件会触发,但是,mouseleave事件是在鼠标悬停在元素上时立即触发的,因此动画中断。
下面是简单的HTML:
<div id="container">
<div class="element">Some text</div>
<div class="element">Some other text</div>
<div class="element">Some more text</div>
</div>移动元素被javascript绝对定位在顶部元素之上,并上下移动,这是jsfiddle上的示例
还有谁要处理这件事吗?谢谢
发布于 2013-11-16 04:40:07
我认为你需要把鼠标输入和鼠标输出事件从你的动画函数中拉出来。每次调用animate函数时,都会向每个元素添加另一个鼠标事件。这会导致它在鼠标移出时多次调用动画函数。
这是一个fiddle,我添加了一个计数器来查看动画函数被调用了多少次。
var counter = 0;
function animate(el, dir) {
$("#count").val(counter);
counter++;鼠标悬停并向外移动几次,您可以看到,每次鼠标向外移动时,它都会合成动画调用。
https://stackoverflow.com/questions/20006064
复制相似问题