我正在编写一个网站,我在其中使用 SWFUpload 和大量 Ajax $('#maincontent').load(URL) 来替换主视图的内容。
不幸的是,在 IE 7+ 中,当我在来自 #maincontent 的元素中有一个 SWFUpload 实例并且我使用 .load() 来替换 #maincontent 的内容时,我从正在寻找的 SWFUpload 中得到一个无限循环的错误它是 DOM 元素(已删除)。 (即:“无法设置属性‘SetFileQueueLimit’的值:对象为空或未定义”,“无法设置属性‘SetHttpSuccess’的值:对象为空或未定义”)。
当然,这或多或少会阻塞 javascript 引擎并留下一个无响应的页面,其中没有 javascript 被触发。
所以我的问题是:如何绑定(bind)#maincontent 的 Ajax load() 以便我可以在我的元素被删除之前对其执行 uploader.destroy?
(或解决 IE 问题的任何其他建议……)
谢谢!
最佳答案
根据jquery的doc,方法load的回调是在内容改变后执行的。 所以你可能更喜欢使用
$.get(URL, function(data) {
uploader.destroy();
$('#mainContent').html(data);
});
关于javascript - 在 Ajax .load 之前将事件绑定(bind)到要执行的 DOM 元素上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6789886/