jquery-ui - jquery ui 摇动效果不断触发

标签 jquery-ui

奇怪的问题。

使用 jquery ui 效果如下:

<a href="in" style="position:absolute;" ><img src="images/img.png" id="perlabot"  ></a>
$('#perlabot').on('mouseenter', function () {
     $(this).effect("shake", { times:2, distance: 3}, 120);
});

它可以工作,但在 IE 和 Firefox 上,即使鼠标位于图像中间,图像也会一直抖动。似乎移动图像总是触发 mouseenter 事件? 无法解决这个奇怪的问题。在 chrome 上它只会触发一次。

最佳答案

我没有找到解决您问题的真正解决方案,但您可以通过检查变量是否具有特定值并在用户离开该区域时重置它来轻松避免它。

var active = false;
$('#perlabot').on('mouseenter', function () {
    if (active === false) {
        active = true;
        $(this).effect("shake", {
            times: 2,
            distance: 3
        }, 120);
    }
}).mouseleave(function () {
    active = false;
});

可能不是解决这个问题的最明智的方法,但它在我测试过的每个浏览器中都运行良好(Firefox、Chrome、Opera、IE 10 和 9)

jsfiddle

关于jquery-ui - jquery ui 摇动效果不断触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16566542/

相关文章:

jquery-ui - 可拖动和可扩展的遏制

jQuery UI 模态对话框应固定在滚动上

jquery-ui - 如何计算每个 Jquery 语句的执行时间

jquery - 如何禁用 jquery 数据表中的显示条目属性

jquery-ui - jQuery UI Datepicker - 我如何在选择时突出显示特定范围的日期?

Jquery Datepicker 未选择默认日期

jquery-ui - KnockoutJS 未捕获 jQuery UI 日期选择器更改事件

jquery - 移动数据输入 - 移动友好的数据网格

css - JQuery UI 删除类动画显示不起作用

html - 导航栏下拉菜单中的堆叠选项卡