我正在使用一個腳本來使一個用戶瀏覽到我的網頁的底部點擊時。
我做的第一件事是在$(document).ready()函數內調用代碼,因此一旦DOM被加載,所有東西都會執行。後來,當我在頁面之間導航,移動網站,我發現我的腳本不工作:
$(document).ready(function(){
$("#menu-button").click(function(){
$(document).scrollTop($(".mainFooter").position().top);
});
});
不過,我意識到這是爲什麼,在jQuery Mobile的,阿賈克斯用於每一頁的內容裝入DOM作爲您可以導航,並且DOM就緒處理程序僅對第一頁執行。要在加載並創建新頁面時執行代碼,可以綁定到本頁底部所述的pageinit事件:http://jquerymobile.com/demos/1.1.1/docs/api/events.html
我已綁定到pageinit事件,但錨仍然是如果我在不同的頁面之間導航,然後點擊相同的錨點,則不會將用戶導航到頁面的底部。我正在努力理解爲什麼綁定到pageinit尚未解決問題。
$(document).bind('pageinit', function() {
$("#menu-button").on('click.menu', function(){
$(document).scrollTop($(".mainFooter").position().top);
});
});
據我所知,AJAX在jQuery Mobile的被關閉,這將讓我的代碼與$(文件)。就緒()函數來運行。這樣做可以讓我實現所需的功能。理想情況下,雖然我想讓pageinit與啓用AJAX的工作,以便每次頁面加載AJAX時錨點將工作。
任何建議將不勝感激。
你試圖表明您mobileinit函數內部警告?它是否仍然被解僱,或者是菜單按鈕事件綁定中的問題? – micadelli