1

jQuery Mobile では、入力が行われ、「次へ」ボタンがクリックされると、いくつかの連鎖したダイアログ ボックスが次々にスライド イン/アウトします。しかし、ダイアログ ボックスのヘッダー内の閉じるボタンがクリックされるたびに、最初のダイアログ ボックスがトリガーされた最初のページに戻りたいと思います。通常、各ダイアログ ボックスの閉じるボタンは、それがトリガーされたページ/ボックスに戻ります。しかし、私のアプリでは、最初のページに戻るためにそれらをすべてオーバーライドする必要があります!

私のコード:

<div class="ui-block-b">
    <a data-role="button" data-theme="b" data-icon="arrow-r" data-iconpos="right" 
        data-transition="slide" href="nextpage.html" data-rel="dialog">
        next
    </a>
</div>

thnx!

編集:ドキュメントは言う

連鎖ダイアログ: 「注意: ダイアログが別のダイアログを開く場合 (連鎖)、タイプ data-rel="back" のリンクで最後のダイアログを閉じると、タイプ data-role のルートページまで常に前のダイアログに移動します。 ="ページ" に到達しました。これにより、ダイアログ間の一貫したナビゲーションが保証されます。" [http://jquerymobile.com/demos/1.2.0-beta.1/docs/pages/page-dialogs.html]

4

1 に答える 1

1

dialog に定義された close メソッドをオーバーライドできます$.mobile.dialog.prototype.close

<script>

    $.mobile.dialog.prototype.close = function(){

        console.log("close");

        // DO SOMETHING HERE - EX: REDIRECTING TO MAIN PAGE
        $.mobile.changePage("index.html");
    };

    $(function() {
        console.log("document loaded");         
    });

</script>
于 2012-10-11T11:16:30.047 に答える