jquery-ui-touch-punch和.on()在iPad上不起作用

时间:2014-11-25 21:16:58

标签: jquery ipad jquery-ui jquery-ui-touch-punch

我有一个自定义的网页仪表板,它主要依赖于jQuery,jQuery UI和jquery-ui-touch-punch。除了在iPad上动态内容(js添加元素)上的点击事件外,一切都有效。

所以无处不在

$('.foo').click( function() {
    //whatever
});

但有关动态内容的事件无法在iPad上运行,例如

$('body').on('click', '.foo', function() {
    //whatever
});

仪表板实时监控内容,因此动态元素上的事件是必须的。 有关如何修复的任何想法?

2 个答案:

答案 0 :(得分:0)

根据您的jQuery版本,您可能需要delegate。此外,在文档级别定位,并反转选择器/事件顺序,如下所示:

$(document).delegate('.foo', 'click', function() {
    //whatever
});

on可能仍然有用,在这种情况下,您的选择器/事件顺序是正确的,只需在文档级别定位它。

答案 1 :(得分:0)

我根据@ elzi的回答尝试了delegate(),但它没有用。在jquery文档中看到与on()和delegate()相同的bind(),试过它并且它可以工作!!

$( ".foo" ).bind( "click", function() {
    //whatever
});