0

私は問題があります。スライダーページに移動するリストビューホームページを備えた小さなjQueryアプリがあります。そこにスライダーを使用して値を挿入します。次に、それを次のページに渡します。そのページに番号が表示されます。左上隅の [戻る] ボタンをクリックすると、スライダーが元の位置に戻り、まだ番号が表示されないように、ホームページをリロードします。

私は次のようなことを考えていましたが、うまくいきませんでした:

$(document).on('pageinit', '#homepage',  function(){
        if (number !== 0) {
           location.reload();
        } 
});

ここに私のプロジェクトがあります: http://jsfiddle.net/9ytwt/1/

編集:

私は私の答えを見つけました!!

$('#homepage').bind('pageshow', function() {
            location.reload();
});
4

1 に答える 1

0

一部のブラウザ/Webビューで値を保持できるリロードの代わりに、次を試すことができます document.location = document.location。これは、リンクをクリックするかのように、基本的にページをそれ自体に転送します。

編集:まず第一に、ここにはいくつかの主要な設計上の欠陥があります。一部の入力をリセットするためだけにページをリロードするのは適切ではありません。次に、 にバインドするのpageinitではなく、 にバインドする必要pagebeforeshowがあります。これは、ページが表示される直前に毎回トリガーされます。

コードでは、ページ ID を「pageWithSlider」または同様のものに変更する必要があります。その後、次を使用できます。

$( document ).on( "pagebeforeshow", "#pageWithSlider",  function() {
    $( "#slider" ).val( 20 );
} );

ページが表示されるたびにスライダーをリセットします。

バインドできるさまざまなイベントについて知りたい場合: http://jquerymobile.com/test/docs/api/events.html

于 2012-11-15T12:55:43.913 に答える