0

我在苹果设备上测试过,当我点击屏幕的时候没有效果。这是我的代码。点击事件写这篇文章还有问题吗?

    <script>
        $(function() {
            $('#test').tap(function() {
                $('#menuNum').text('1');
            })
        })
    </script>
4

1 回答 1

0

你需要改变一些事情。

不要使用 $(function() { 或准备检查正确状态的经典文档,它们可能会导致 jQuery Mobile 出现问题。而是使用 jQuery Mobile 替代称为页面事件

然后不要像那样绑定点击事件,使用适当的现代方式来做到这一点。在您的情况下,必须将元素加载到 DOM 中才能使这种绑定起作用。并且由于 $(function() { 有时会发生在执行绑定时元素仍在加载的情况。所以像这样使用它:

$(document).on('tap','#test',function() {
    $('#menuNum').text('1');
});

此方法不关心元素是否存在,即使在绑定过程后将元素加载到 DOM 中也会起作用。

工作示例:http: //jsfiddle.net/Gajotres/SQ7DF/

最后你想要这样的东西:

$(document).on('pagebeforeshow', '#index', function(){ 
    $(document).on('tap','#test',function() {
        alert('Tap');
    });       
});
于 2013-05-24T09:31:50.387 回答