[jQuery] [1]始终会记住您的鼠标触发器(单击或悬停)。因此,如果您四次鼠标输入和鼠标退出,它将执行该事件四次。

如何使它“忘记”触发器,以便当我鼠标输入并-退出触发器时,它仅执行一次?

编辑:
我将如何在这段代码中做到这一点?

$("#products").mouseenter (function () {
    $(".slider").animate({"margin-top":"0px"},750);
    $("#p_dropdown").animate({"height":"96px","margin-top":"45px"}, 750);
    $(".products_dropdown").animate({"height":"32px"},750);
      });
$("#p_dropdown").mouseleave( function() {
    $(".slider").delay(750).queue(function(n){$(this).animate({"margin-top":"46px"},1150)});
    $("#p_dropdown").animate({"height":"0"}, 750);
    $(".products_dropdown").animate({"height":"0px"},750);

});

最佳答案

jQuery的功能one完全可以满足您的需求。您挂接的任何事件将仅执行一次。

例如,

$("#div1").one("click", function() {
    alert("Will be shown only once");
});

09-17 19:13