0

我正在使用 jquery 1.8.3,并且正在进行 .live 通话

   $('.ui-state-default').live('click', function(e) {
        $(".upload").show();
    });

使用我的 iPhone iOS 6.1 我无法点击这个 dom 元素。

为什么 iOS 不理解 .live?

我把我的代码换成了这个。

$('.ui-state-default').bind('click', function(e) {
    $(".upload").show();
});

但是现在我有另一个问题,有没有办法让 iOS 理解 .live 的第一段代码?

4

2 回答 2

2

好吧,无论如何,在较新的 jQuery 版本中,live 已经被删除了,所以无论如何我都会习惯以不同的方式使用它。

$('body').on('click', '.ui-state-default', function(e) {
    $(".upload").show();
});

body可以用任何保证在文档准备好的包含.ui-state-default元素的东西来替换。身体将永远存在,但如果您愿意,也许您可​​以使用更具体的东西。

此外,您可能真的不想在 iOS 上使用“点击”,“触摸启动”可能是更好的选择。(但要做一些研究,而不是仅仅把它放进去!)

于 2013-05-06T15:53:44.353 回答
1

使用 .on() 作为 .live() 已弃用,绑定点击和点击事件:

$(document).on('click tap', '.ui-state-default', function(e) {
    $(".upload").show();
});
于 2013-05-06T15:53:02.783 回答