一般我们有动态的比如 一个 div 点击 其他一个 或者是 鼠标移动到另一个 div时候, 淡入淡出动画,或者是其他动画 。显示或者隐藏。 当然如果使用 CSS3动画那就更好了,那样BUG是没有的。
可是会发现如果我们操作比较频繁的时候,就会发现动画就一直在无脑执行,自动操作很多次。这不是我们想要的:
解决办法:
下面是一个 鼠标移动 移出 div 淡入淡出或者是隐藏 的效果例子 js部分:
//鼠标经过 标题显示 div 隐藏就隐藏
//鼠标移动事件 推荐使用 hover() 如果是其他事件容易出现BUG的
$("#thingContent").hover(function(event) {
//$("#thinkStandard").show();
// event.preventDefault(); //这里不可以,连 基本效果都没有
//event.stopPropagation(); 这个不行
$("#thinkStandard").stop(true).fadeIn();
}, function(event) {
// $("#thinkStandard").hide();
// event.preventDefault();
//event.stopPropagation();
// stop(true) 表示 停止所有的同级队列,如果不为ture 那么会将当前的动画执行完才会执行下去的
$("#thinkStandard").stop(true).fadeOut(3000);
// $("#thinkStandard").stop().fadeOut(3000); stop阻止同级别的事件
});
详情请看 jq stop() 方法和 hover 方法
本文介绍如何使用jQuery的stop()方法和hover()方法优化频繁触发的动画效果,避免动画无脑执行,实现更流畅的用户体验。

3165

被折叠的 条评论
为什么被折叠?



