2012-05-04 90 views
0

我需要有一個多頁的HTML,每個頁面包含一個相同的切換。當用戶改變一頁上的切換時,其他頁面上的所有切換應該改變(或者至少在加載其他頁面時改變)。如何使用JQuery Mobile同步跨頁面的切換選擇?

我創建了一個小提琴來演示一個簡單的場景,一個兩頁的例子和在每個頁面上相同的切換。我希望能夠通過切換頁面1 http://jsfiddle.net/vSr99/

上的切換來改變第2頁撥動我已經嘗試了多種方法,以及對已包括試圖用JavaScript來操作後刷新,但甚至沒有接近,毫無疑問,由於我的編程挑戰性質: -/

如果任何人都可以建議一個簡單的解決方案,我會非常感激!

THX

回答

1

嘗試設置一個全球性的屬性,單擊時按鈕,保存這個在$(「HTML」),像這樣:

$('html'). attr('toggleIs',true); 

,那麼你可以檢查這對pagebforeshow和根據按鈕狀態,將切換狀態添加到所有新頁面上的按鈕上。

EDIT
這裏是一個jsfiddle(忽略所述第一警報);

下面是HTML:

$(document).on('change', '.your_select', function(){ 
    // set 
    if($(this).find('option:selected').val() == "on"){ 
     $('html').data('toggle', 'on'); 
     } else { 
     $('html').data('toggle', 'off'); 
     } 
    }); 

$(document).on('pagebeforeshow', '.ui-page', function(){ 

    var that = $(this).find('.your_select'); 
    // clear 
    that.find('option').removeAttr('selected'); 
    // reset 
    if($('html').data('toggle') == "on"){ 
     alert("should be on") 
     that.find('select option[value="on"]').attr('selected', 'selected') 
     } else { 
     alert("should be off")   
     that.find('option[value="off"]').attr('selected', 'selected') 
     } 
// refresh slider 
... 
}); 

請注意:

  • 我花了一段時間,看看你在哪裏使用jQuery 1.6.4,所以我上綁定沒有工作。如果你想保持,你需要使用的綁定也可拍攝頁現場在被拉扯。
  • 我給一個班的所有滑塊,設置在一起
  • 我不能讓JQM滑塊(」刷新「)工作的滑塊或任何父元素...你將不得不自己弄清楚,但同步工作:-)
+0

謝謝 - 這看起來正是我的東西之後。不幸的是,我不知道我將如何在頁面上實現這一點 - 我可以麻煩你編輯小提琴頁面,所以我可以看到一個工作的例子嗎? – vinomarky

+0

看到我上面的編輯。 – frequent

+0

感謝您的努力。當我滑動滑塊並改變頁面時,它們似乎不被同步。從你上面寫的,這是由於刷新不起作用,是正確的?在這種情況下,這可能是爲什麼不管我以前嘗試過什麼,我還沒有能夠得到這個工作到目前爲止......感謝您的協助,你已經幫助我在那裏大部分的方式(希望!) – vinomarky

相關問題