我解决了在Internet Explorer上使用flash覆盖thickbox的问题,但随后flash图像消失了。我必须刷新页面才能恢复闪存图像。我把这个编码放在thickbox.js文件中:
$('object').each(function() {
this.regDisplay=this.style.display; this.style.display='none';
})
$('#TB_window object').each(function(){
this.style.display=this.regDisplay;
})
$('object').each(function(){
this.style.display=this.regDisplay;
})
在我的厚盒图片放大后,我滚动浏览了我的图片库,当我关闭图库时,我的闪光图像消失了。它只在我刷新网页时重新出现。闪存图像如何保留在页面上而不会消失?
感谢您的帮助。
答案 0 :(得分:1)
编辑:(我的旧答案如下) 我的旧解决方案导致厚箱的卸载事件不会被触发。我的错 :( 问题是,当在IE中触发卸载事件时,它会以某种方式移除闪存(不要问我为什么,:p)。 在互联网上挖掘之后,我发现当你将flash对象放在iframe中时,不再会发生奇怪的行为,:))
我遇到了同样的问题,我刚解决了,:D
我的解决方案是稍微更改jquery.thickbox.js文件
我发现罪魁祸首是在tb_remove()函数中,当它试图触发unload事件时,取消绑定所有事件,并删除“#TB_window”,“#TB_overlay”和“#TB_HideSelect”元素。 你应该在jquery.thickbox.js文件中找到这一行:
$("#TB_window").fadeOut("fast",funtriction(){$('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove();});
我改变了调用方法的顺序:
$("#TB_window").fadeOut("fast",funtriction(){$('#TB_window,#TB_overlay,#TB_HideSelect').remove().trigger("unload").unbind();});
我希望它可以帮到你,:))
干杯