我遇到一个问题,即jquery加载函数会清除它所针对的dom元素。
popup_content.load('form.html #print_options1', function() {popup_content.fadeIn();});
当popup_content是jquery所针对的div时。之前使用jquery加载来将内容加载到此div中而没有任何问题。但这一次,整个div都消失了。
但是,如果我在该调用之后添加一个javascript警告语句,如下所示:
popup_content.load('form.html #print_options1', function() {popup_content.fadeIn();});
alert('after call');
然后它工作(当然,在显示令人讨厌的警报之后)。它似乎只是一些时间问题。有没有人遇到过这种问题,如果有的话,有什么解决方案吗?任何帮助,将不胜感激!谢谢!
答案 0 :(得分:0)
是否有可能重新分配popup_content
引用? alert()
调用会产生另一种影响,你可能没有考虑,摆脱它所需的时间允许ajax调用完成并加载内容,使function() {popup_content.fadeIn();}
发生在popup_content
之前} 变化。没有警报,它会在某个时间发生以后......到那时你的变量发生了什么变化?
如果是这种情况,请尝试不要依赖该引用,而是使用this
:
popup_content.load('form.html #print_options1', function() {
$(this).fadeIn();
});