Javascript 为什么load()事件未检测到div加载?
根据jquery规范,Javascript 为什么load()事件未检测到div加载?,javascript,jquery,asp.net-mvc,asp.net-mvc-4,Javascript,Jquery,Asp.net Mvc,Asp.net Mvc 4,根据jquery规范,load()是在页面加载中调用的最后一个函数。但是,当我有几个内部部分页面时,如果我将放在内部部分中的一个中,就会执行加载(),但如果我添加一个条件,则会检查div是否已加载 if ($('#div1').length > 0 ){ } 这将变成错误,为什么会发生这种情况以及如何修复 我在主要部分中检查div1 $(window).on('load', function() { $('#div1').append('<p>this is eg&l
load()
是在页面加载中调用的最后一个函数。但是,当我有几个内部部分页面时,如果我将
放在内部部分中的一个中,就会执行加载()
,但如果我添加一个条件,则会检查div
是否已加载
if ($('#div1').length > 0 ){ }
这将变成错误
,为什么会发生这种情况以及如何修复
我在主要部分中检查div1
$(window).on('load', function() {
$('#div1').append('<p>this is eg</p>');
if ($('#div1').length == 0) {
alert('loaded');
}
});
$(窗口).on('load',function()){
$(“#div1”).append(“这是eg”);
如果($('#div1')。长度==0){
警报(“已加载”);
}
});
上面的代码显示了警报,因为没有div,但当我检查chrome中的元素时,它显示了一个空div我假设您正在尝试在页面加载后获取#div1控件
$(document).ready(function() {
$('#div1').append('<p>this is eg</p>');
if ($('#div1').length == 0) {
alert('loaded');
}
});
$(文档).ready(函数(){
$(“#div1”).append(“这是eg”);
如果($('#div1')。长度==0){
警报(“已加载”);
}
});
if(('#div1').length>0){}jQuery.load()
是.ajax()
函数的简写形式。它与加载页面的时间无关。假设您的意思是$(document).ready()
?@StephenMuecke如果是这种情况,那么我如何检查是否加载了#div1?我只需要注意('#div1')。长度>0
将始终是真的
,因为您得到的是字符串的长度'#div'
。大概你的真实代码有一个$
,例如$('div1')。长度>0
?如果($('div1).长度>0){//do something}
是的,但是在元素(chrome)中它显示了,但没有显示我的警报或附加文本$(窗口)。在('load',function(){alert('fired');$('div1')。append('p>这是eg);如果($('#Div1').length>0){alert('loaded');}else alert('not done');});上述代码按预期工作