jQuery - 在iPad上调用两次click-event

Tim*_*Tim 1 javascript jquery jquery-ui

我的网页应用程序是专为iPad设计的.我使用jQuery和jQuery UI来拖动屏幕上的元素.因为在iPad上,默认情况下无法拖动元素,我添加了这个库:

http://code.google.com/p/jquery-ui-for-ipad-and-iphone/

包括它,我可以在iPad上拖放元素,但也会出现问题.我在draggable元素上也有一个div与图像,它应该是可点击的.

所以我整合了这些线:

$(document).ready(function() {
    $(".note").draggable();
    $('.closebutton').click(function() {
        alert("test");
    });
});
Run Code Online (Sandbox Code Playgroud)

问题是,包括拖动库,警报消息test弹出两次或屏幕被冻结.

我在这里创建了一个完整的演示:

http://jsbin.com/oliwo/2/

在普通的桌面浏览器上,如Firefox 4 Beta和Safari,它可以工作,只需test在x - delete图像上单击鼠标即可显示一条消息.在iPad上,我收到消息两次或屏幕冻结.

有人能帮帮我吗?非常感谢你提前和最好的问候.

reg*_*ero 5

这不是一个真正的回应,因为我不知道为什么你有两次.但是,如果您确定您的点击事件是应该附加到此按钮的唯一点击事件行为,您可以尝试一种解决方法 ; 在绑定之前创建一个unbind(),这将删除任何先前的单击绑定(因此,如果这次运行多次,您将只获得一个事件):

$('.closebutton').unbind().click(function() { ...
Run Code Online (Sandbox Code Playgroud)

或更好:

$('.closebutton').unbind('click').click(function() { ...
Run Code Online (Sandbox Code Playgroud)