为网页上的embedded对象使用wmode =“transparent”,“opaque”或“window”之间的差异

当使用<object><embed>标签embeddedFlash对象时,会有一个名为wmode的属性。 看起来大多数时候, wmode="transparent"wmode="opaque" wmode="transparent"是一样的,因为Flash实际上并没有任何透明的颜色,因此底部的HTML元素将被显示出来。 因此, opaque应该比transparent快,因为它需要较less的处理透明度,但大部分时间我看到embeddedtransparent而不是opaque Flash对象。

opaque是需要的,以便其他HTML元素不会被Flash对象覆盖(例如popup一个额外子菜单的菜单项不会被Flash对象覆盖)。

顺便问一下,有没有关于wmodeopaquetransparentwindow正式文档? 我只能find描述它的博客,而不是正式的文档。 谢谢。

这里是一些弱的土坯文件在不同的Flash 9 wmode设置。

关于wmode透明的注意事项是在adobe bug trac中 。

而新的闪存10,是两个新的wmodes:gpu和直接。 请参阅有关wmode的Adobe知识库 。

不透明会导致较less的系统压力,因为“透明”仍然会尝试应用阿尔法。 你使用透明的原因是因为大多数web作者都不注意细节(即只复制粘贴他们find的一些embedded代码)。

顺便说一句,你是正确的,它是无证的。 我见过的最好的博客是一个自称与Macromedia开发者谈过话的人。 不幸的是我找不到链接。

编辑 :我认为这是这一个: http : //www.communitymx.com/content/article.cfm?cid=e5141

另外,用wmode=opaque和IE,Flash获取键盘事件,而且html页面也收到它们,所以它不能用于embeddedFlash游戏之类的东西。 很烦人

关于“wmode”的Adobe KB以及其对于performance和性能影响的其他属性,有一个很好的写法。

http://kb2.adobe.com/cps/127/tn_12701.html

一个奇怪的事情是,在Chrome + Firefox中,MOUSE_LEAVE事件不会分派给OPAQUETRANSPARENT

WINDOW它工作正常。 那一个花了一些时间找出来! GRR …

(注意:jediericb提到了这个bug – 类似但没有提到MOUSE_LEAVE