javascript - jquery加载问题

标签 javascript jquery

我遇到一个问题,jquery 加载函数清除了它所针对的 dom 元素。

popup_content.load('form.html #print_options1', function() {popup_content.fadeIn();});

当 popup_content 是 jquery 定位的 div 时。之前使用 jquery load 将内容加载到此 div 中没有出现问题。但这一次,整个 div 就消失了。

但是,如果我在该调用之后添加一个 javascript 警报语句,如下所示:

popup_content.load('form.html #print_options1', function() {popup_content.fadeIn();}); 
alert('after call');

然后它就可以工作了(当然,在显示烦人的警报之后)。这似乎只是一些时间问题。有人遇到过这种问题吗?如果有,有什么解决办法吗?任何帮助,将不胜感激!谢谢!

最佳答案

是否有可能重新分配popup_content引用? alert() 调用还有另一个您可能没有考虑到的效果,摆脱允许 ajax 调用完成并加载内容所需的时间,从而使 function() {popup_content.fadeIn();} 发生在 popup_content 更改之前。如果没有警报,它会在稍后某个发生...到那时你的变量发生了什么事情吗?

如果是这种情况,请尝试不要依赖该引用,而是使用 this :

popup_content.load('form.html #print_options1', function() {
  $(this).fadeIn();
});

关于javascript - jquery加载问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2422210/

相关文章:

javascript - 轮播宽度问题

jquery fadeIn 不工作

javascript - 为什么我的 jquery animate() 回调会导致溢出?递归

javascript - 检测 DOM 中的变化

javascript - jquery 对话框中的标准按钮就像对话框的提交按钮

javascript - 将 IndexOf 与日期和谷歌表格一起使用

jquery - YouTube API-播放/暂停切换按钮

javascript - 为什么满足if条件后还要进入else部分?

javascript - iText PDFReader 打开速度极慢

jquery - 使用when和done和settimeout显示隐藏div