所以,我有以下代码:
$(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元素,因此初始化没有问题,但是,当使用ajax时,菜单的初始化在DOM元素之前开始满载。
我做了一些研究,.prepend()
不支持回调,所以不是一个选项。
menuInit()
周围setTimeOut()
有100毫秒有效,但它肯定会因连接速度慢而失败,我需要更动态的东西。
答案 0 :(得分:0)
将其余代码放在回调中,以便在将数据添加到页面后执行:
p{
position: absolute;
top: 40%;
display: inline-block;
left: 5%;
}