这是我目前面临的情况。
我有一个嵌入式YouTube视频<object>
。该对象公开了javascript API来控制播放器。
将display:none设置为对象或包装对象的div后,方法将变为未定义。
一旦dispay css属性被设置回&#39; block&#39; - 方法再次可用。
我创造了一个展示问题的小提琴。
我想知道它为什么会发生,是否有可能监控对象的状态并查看它是否已经加载并准备好使用?
提前致谢!
注意:Chrome中可以看到此问题
答案 0 :(得分:0)
在IE中可以正常使用。
我的假设是,无论你使用什么浏览器,都认为通过“优化”东西是聪明的。 Flash对象是隐藏的吗?嗯,你不可能想用它做任何事情,没办法。 [/讽刺]
我建议将元素移出屏幕而不是隐藏它:
#elem {
position: fixed;
right: 100%;
}
答案 1 :(得分:0)
使用NPAPI插件(即不是Internet Explorer)时会发生这种情况。您可以将项目移出屏幕(需要display:absolute
/ display:relative
),或将flash对象设置为包含html元素的100%大小,并将该元素的高度或宽度设置为。 01px。不要使用$(elem).fadeOut
,因为在动画结束时,jq设置display:none
。而是使用不会改变其他css属性的$(elem).fadeTo
。还有必要添加一个新的参数
<param name="wmode" value="transparent">
让淡入淡出动画正常工作。