Различия между использованием wmode="transparent", "opaque" или "window" для встроенного объекта на веб-странице
При встраивании Flash-объекта с <object>
а также <embed>
тег, есть атрибут с именем wmode
, Кажется, что большую часть времени, wmode="transparent"
такой же как wmode="opaque"
поскольку Flash фактически не имеет прозрачного цвета, поэтому должен отображаться нижний элемент HTML. В следствии, opaque
должно быть быстрее, чем transparent
так как это требует меньше обработки для прозрачности, но в большинстве случаев я вижу объект Flash, встроенный с transparent
вместо opaque
,
opaque
необходим для того, чтобы другой элемент HTML не был закрыт объектом Flash (например, элемент меню, который вызывает дополнительное подменю, не будет закрыт объектом Flash).
Кстати, есть ли официальная документация для wmode
"s opaque
, transparent
, а также window
? Мне удалось найти только блоги, которые описывают это, но не официальную документацию. Благодарю.
5 ответов
Вот некоторая слабая документация Adobe по различным настройкам Flash 9 wmode.
Предупреждение о прозрачности wmode находится здесь, в Adobe Trac.
И новинка для flash 10 - это два новых режима: gpu и direct. Пожалуйста, обратитесь к базе знаний Adobe о wmode.
Непрозрачность вызовет меньшую нагрузку на систему, поскольку "прозрачный" все равно будет пытаться применить альфа. Причина, по которой вы видите, что используется прозрачность, заключается в том, что большинство веб-авторов не обращают внимания на детали (то есть просто вставляют скопированный код, который они нашли).
Кстати, вы правы об этом без документов. Лучшее, что я когда-либо видел, это блог парня, который утверждает, что говорил об этом с разработчиком Macromedia. К сожалению, я не могу найти ссылку.
РЕДАКТИРОВАТЬ: Я думаю, что это было это: http://www.communitymx.com/content/article.cfm?cid=e5141
Также с wmode=opaque
а в IE Flash получает события клавиатуры, а также получает их HTML-страница, поэтому его нельзя использовать для чего-то вроде встраивания флеш-игры. Очень надоедливый
В "Adobe KB" довольно неплохо написано "wmode" и другие атрибуты, касающиеся их влияния на представление и производительность.
Одна странная вещь в том, что в Chrome + Firefox событие MOUSE_LEAVE не отправляется для OPAQUE
а также TRANSPARENT
,
С WINDOW
это работает отлично. Это заняло некоторое время, чтобы узнать! GRR...
(примечание: jediericb упомянул эту ошибку - которая похожа, но не упоминает MOUSE_LEAVE
)