0

Apple デバイスでテストしましたが、画面をクリックしても効果がありませんでした。これは私のコードです。この書き込みのイベントをクリックして質問がありますか?

    <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 に答える