Jquery 知道新HTML元素何时用.load()完全加载
我对Jquery 知道新HTML元素何时用.load()完全加载,jquery,load,Jquery,Load,我对.load()jquery函数有一些问题,我试图在一个隐藏块中预加载一些HTML,而不是在加载所有新元素时,我希望将其移动到dom树中。 那是我的剧本 var preloader = $(document.createElement("div")).attr('id', 'msgloader').css({ visibility: "visible"}); // visible is just for test it preloader.html( newHtml ); // newHtm
.load()
jquery函数有一些问题,我试图在一个隐藏块中预加载一些HTML,而不是在加载所有新元素时,我希望将其移动到dom树中。
那是我的剧本
var preloader = $(document.createElement("div")).attr('id', 'msgloader').css({ visibility: "visible"}); // visible is just for test it
preloader.html( newHtml ); // newHtml is a string with html elements like images table etc.
$("body").append(preloader);
preloader.load(function() { alert("div is ready"); });
我不知道为什么,但当msgloader中的新HTML准备就绪并完全加载时,永远不会触发
警报()
消息您知道我在哪里制作miskate吗?.load()
用于从服务器加载数据。当您只需.append()
一些HTML时,它就可以立即准备就绪。您的load()
函数不会显示警报,因为它不会load
加载任何内容。您为什么不在document ready中执行此操作?由于您正在直接修改dom,您所做的更改应该立即可用,因此load()永远不会触发,因为它是在您添加代码之后设置的。请参阅以下内容的注意事项:
与图像一起使用时加载事件的注意事项
开发人员试图使用.load()解决的一个常见问题
快捷方式是在图像(或
图像)已完全加载。有几个已知的警告
这一点值得注意。这些是:
- 它在跨浏览器中无法稳定工作,也不可靠
- 如果图像src设置为与以前相同的src,则在WebKit中无法正确触发
- 它不能正确地在DOM树上冒泡
- 对于已经存在于浏览器缓存中的图像,可以停止激发