0
所以,我有以下代碼:JavaScript的 - 等到AJAX回調中DOM的修改已經完成
$(document).ready(function(){
//Retrieve menu html
$.get('/modules/menu.php', function(data) {
//Load menu html
$('main#main').prepend(data);
});
//Initialize Menu
menuInit();
$('#menuToggle').click(function() {
$('#main_menu').fadeToggle();
});
});
menuInit()
包含在HTML,而不是直接使用$.get()
的時候成功地修改DOM元素,所以intialization有沒有問題,但是,當使用ajax時,菜單的初始化在DOM元素完全加載之前開始。
我已經做了一點研究,.prepend()
不支持回調,所以不是一個選項。
周圍menuInit()
與setTimeOut()
與100毫秒的作品,但它肯定會失敗,連接速度慢,我需要更動態的東西。
如果移動'menuInit()'調用到'$會發生什麼。在'.prepend()'之後get()'成功回調? (你不需要'.prepend()'回調。) – nnnnnn
哈哈哈哈,真棒!你只是修復它o.O我以爲我曾試過... – TheCamps10