JQuery for mobile safari:on()失败

我正在尝试为移动网页更改动态生成的DOM元素的某些类。 我通常的方法,jquery on()没有正确地获取事件。

"delegate()" ,我的备份工作也都没有。

我正在使用JQuery版本“http://code.jquery.com/jquery-1.7.min.js”

解决方案是在div元素上添加onclick =”。 不知道为什么会有效,但确实如此。 –

而不是使用on,你不能只是按原样编写事件吗?

如:

 $(document).ready(function () { }); $(document).click(function () { }); $(document).keyup(function () { }); $(document).keydown(function () { }); 

记住在加载DOM后将事件添加到对象。 因为如果您尝试在DOM就绪检查之外使用jQuery选择器,它可能会在加载实际元素之前执行,然后它将找不到任何内容。 这将导致没有事件发生。

尝试Live活动

 $(".element").live("click",function(){ alert("Clicked"); }); 

在动态生成的DOM元素上附加事件

您需要确保使用jQuery 1.7.1和jQuery Mobile 1.1.0 Final。 使用jQuery的1.7.1版本非常重要,而不是现在最新的1.7.2版本。

使用on()代替所有内容可以提供更好的体验。 事实上,几乎所有其他东西都已被弃用。

几个星期前,我在一篇博客文章中对此进行了一些讨论。

http://zsprawl.com/iOS/2012/04/using-new-jquery-1-7-on-off-functions/