Пожалуйста, обратите внимание, что изменение wmode вашей Flash-анимации серьезно увеличит загрузку процессора вашей машины и замедлит ваши анимации. Flash Player использует свое собственное окно поверх окна браузера по уважительной причине. Если для wmode установлено значение opaque, Flash будет вынужден отображаться в окне браузера. С wmode = transparent он даже должен объединить свои визуализации с существующим содержимым сцены браузера.
Обычно я использую ту же технику, которая используется во многих сценариях лайтбокса: переключать все Flash-фильмы невидимыми, пока диалог видим. Это НЕ должно быть сделано путем установки дисплея: нет. Результатом может быть смещение содержимого на остальной части страницы, если прямоугольник Flash больше не находится на сцене. По той же причине вам НЕ следует использовать метод jQueries hide (). Вместо этого используйте visibility: hidden, который по-прежнему занимает пространство скрытого элемента.
Вот мой способ сделать это:
$('#myDialogId').dialog({
open: function(){
// hide any flash objects
$('object').css('visibility', 'hidden');
// hide any flash embeds
$('embed').css('visibility', 'hidden');
},
close: function(){
// show any flash objects
$('object').css('visibility', 'visible');
// show any flash embeds
$('embed').css('visibility', 'visible');
//
}
});