javascript - jQuery - 点击事件在 iPad 上被调用两次

标签 javascript jquery jquery-ui

我为 iPad 设计的 Web 应用程序有问题。 我使用 jQuery 和 jQuery UI 在屏幕上拖动元素。因为在iPad上,元素默认是不能拖动的,所以我添加了这个库:

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

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

所以我整合了这些行:

$(document).ready(function() {
    $(".note").draggable();
    $('.closebutton').click(function() {
        alert("test");
    });
});

问题是,包括拖库,提示消息 test 弹出两次或者卡屏。

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

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

在普通的桌面浏览器上,如 Firefox 4 Beta 和 Safari,它可以工作,只有一条 test 消息通过在 x - delete 图像上单击鼠标出现。在 iPad 上,我收到两次消息或屏幕卡住。

有人能帮帮我吗?非常感谢您,并致以最诚挚的问候。

最佳答案

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

$('.closebutton').unbind().click(function() { ...

或更好:

$('.closebutton').unbind('click').click(function() { ...

关于javascript - jQuery - 点击事件在 iPad 上被调用两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4569869/

相关文章:

javascript 将变量存储在数组中以启用按变量值排序

javascript - Closure Compiler 可以构建 CommonJS 模块吗

jquery - 移动设备上的 Bootstrap 响应问题

asp.net-mvc - 在 jQuery UI 对话框中显示 MVC3 Unobtrusive ValidationSummary 错误

javascript - 如何添加到 Chrome 多功能框(地址栏)的上下文菜单中?

javascript - 无法使用 javascript 设置 HTML 对象元素的数据属性

php - 无法使用 Javascript AJAX 发送帖子数据从 Summernote textarea 获取值(value)

javascript - Ajax 调用不起作用

css - jQuery UI 对话框的自定义样式

jQuery 和 jQuery UI : Building a draggable infinite grid with content (imgs) of varying size