在使用<object>
和<embed>
标记嵌入Flash对象时,会有一个名为wmode
的属性。似乎大多数情况下wmode="transparent"
与wmode="opaque"
相同,因为Flash实际上没有任何透明颜色,因此底部HTML元素将被显示。因此,opaque
应该比transparent
快,因为它需要较少的透明处理,但大多数时候我看到Flash对象嵌入了transparent
而不是opaque
。
opaque
以便Flash对象不会覆盖其他HTML元素(例如弹出额外子菜单的菜单项不会被Flash对象覆盖)
顺便提一下,wmode
opaque
,transparent
和window
是否有正式文档?我只能找到描述它的博客,但不能找到正式的文档。感谢。
答案 0 :(得分:34)
在不同的flash 9 wmode设置中,这是一些弱adobe documentation。
关于wmode透明的注意事项在adobe bug trac。
Flash 10的新功能是两个新的wmodes:gpu和direct。请参阅Adobe Knowledge Base about wmode。
答案 1 :(得分:20)
不透明会减少系统压力,因为'透明'仍然会尝试应用alpha。你看到透明使用的原因是因为大多数网络作者都不注意细节(即,只是复制粘贴他们发现的一些嵌入代码)。
顺便说一下,你对它没有证件是正确的。我见过的最好的是一个博客,一个声称已经与Macromedia开发者讨论谈论的人。不幸的是我找不到链接。编辑:我认为就是这个:http://www.communitymx.com/content/article.cfm?cid=e5141
答案 2 :(得分:7)
另外,使用wmode=opaque
和IE,Flash获取键盘事件,但html页面也接收它们,所以它不能用于嵌入flash游戏之类的东西。非常讨厌
答案 3 :(得分:3)
关于它们对演示和性能的影响,Adobe KB中关于'wmode'以及其他属性的写得非常好。
答案 4 :(得分:2)
奇怪的是,在Chrome + Firefox中,不会为OPAQUE
和TRANSPARENT
调度MOUSE_LEAVE事件。
使用WINDOW
它可以正常工作。那个花了一些时间才发现! GRR ...
(注意:jediericb提到了this bug - 这是相似但没有提及MOUSE_LEAVE
)