我在移动设备/平板电脑上遇到事件触发两次的问题。当我点击下面的函数时,应该下拉的菜单会下拉,然后立即向上滑动。这只是在触摸设备上出现的问题。
$(document).on("touchend click", ".lines-button", function(e){
e.stopImmediatePropagation();
if($(this).hasClass("close")){
$(this).removeClass("close");
$(".widget1x1Back").next(".actionsHolder3").slideUp("fast", function() {
$(this).remove();
});
}else{
var iconsList = $(this).closest(".top1x1").next(".hdnActnLst").find(".iconsHolder3").html();
$(this).closest(".widget1x1").append(iconsList);
$(this).closest(".widget1x1").find(".actionsHolder3").hide();
$(this).closest(".widget1x1").find(".actionsHolder3").slideDown(700,"easeOutBack");
$(this).addClass("close");
}
});
任何输入都很好,谢谢!
alert( e.type );
),告诉你触发函数的事件类型。我有一种感觉,你的函数会被触发两次(一次是touchend,一次是click)。参考 - JRulle