我有一個應用程序使用ajax調用來加載內容。這些ajax調用只是檢索HTML。 Javascript是在另一個文件中。document.ready()函數之後和Ajax調用
完成AJAX調用後,我會調用一個函數,該函數應該儘快開始執行javascript。
這裏我留下一個小函數,它將從ajax調用中檢索一些代碼。
function loadPage(page) {
$(".container").html("");
if(page == "page1") {
$.ajax({
url: "/page1.php",
success: function(html){
$(".container").html(html);
loadPage1Script();
}
});
}else if(page == "page2"){
$.ajax({
url: "/page2.php",
success: function(html){
$(".container").html(html);
loadPage2Script();
}
});
}
}
之後,他們將執行loadPage1Script()或loadPage2Script()。
function loadPage1Script(){
//Start the carousel plugin, for example
}
新代碼已被添加到HTML結構中。我應該打電話給$(document).ready();在執行代碼以附加所有事件處理程序之前在loadPage1Script()中?如果我不這樣做,是否有區別?如果我添加$(document).ready(),腳本的啓動速度會更快嗎? ?
function loadPage1Script(){
$(document).ready(function(){
//Start the carousel plugin, for example
});
}
從jQuery的網站(http://api.jquery.com/ready/)摘自:
「在大多數情況下,該腳本可以儘快的DOM分層已全部構建運行)傳遞給。就緒處理程序(是。保證後的DOM準備好執行,因此,這通常是連接的所有其他事件處理程序和運行其它jQuery代碼的最佳場所。「