基本上,我想處理哈希監聽以及我自己代碼中的所有內容,但是我無法讓jQM停止監聽哈希變化事件,並且通常不會使用URL。我從他們的文檔試圖代碼:如何阻止jQuery Mobile使用window.location執行任何操作?
$(document).bind('mobileinit', function() {
$.extend($.mobile, {
hashListeningEnabled: false,
pushStateEnabled: false,
ajaxEnabled: false,
linkBindingEnabled: false
});
});
的mobileinit事件就都不曾在第一頁負載點火雖然(即使它看起來像它應該),這樣就不會爲我工作。讓代碼執行的代碼是將它放在$(window).bind('load')中,我可以通過$.mobile.hashListeningEnabled === false
驗證Firebug控制檯中的值是否正確設置 - 但是,它們看起來並不像做任何事!當我在地址欄中輸入<mysite>/index.html
時,它會加載我的默認頁面,但是如果我輸入<mysite>/index.html#anything
它只顯示jQM加載微調器並且從不加載任何東西(我推測它是因爲它正在尋找文件內有data-role=anything
的頁面,是它的默認功能)。此外,pushStateEnabled
覆蓋顯然無法正常工作,因爲如果我運行window.location.hash = /somethingelse.html
,則任何受支持的瀏覽器中的URL欄將顯示http://<mysite>/somethingelse.html
,而不是預期的http://<mysite>/index.html#somethingelse.html
。
基本上,我想要的是jQuery Mobile來處理頁面佈局和DOM操作,絕對沒有別的。這可能嗎?
謝謝,這樣做!事實證明,它確實表明,在文檔中,我想我必須以某種方式掠過它。 – jcsmnt0 2012-07-12 14:44:34
您的歡迎,我花了一段時間才弄清楚了第一個復飛。 – 2012-07-12 15:23:17