CSS меню не появляется поверх флеш

У меня есть раскрывающееся / многоуровневое меню CSS на странице. Тем не менее, меню не отображается поверх имеющейся у меня флеш-карты. Кажется, что исправить можно было бы добавить wmode: прозрачный (или непрозрачный), но это не работает для меня. Я также пытался установить z-уровень в CSS на очень высокие значения (2000), но это тоже не работает.

Кроме того, я использую open-flash-chart-v2 для генерации графика. (хотя я не думаю, что это имеет значение, но это ограничивает мою способность передавать переменные, поскольку я не использую тег embed или object напрямую).

<script type="text/javascript">
swfobject.embedSWF("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf", {"wmode" : "transparent"});
</script>

Страница, показывающая проблему (в настоящее время это не показывает попытку z-index исправить.)

2 ответа

Решение

Тег wmode установлен неправильно.

Вот правильный код:

<object width="100%" height="100%" style="visibility: visible;" id="chart" data="/ofc-library/open-flash-chart.swf" type="application/x-shockwave-flash"><param value="transparent" name="wmode"/></object>

Вот ваш код:

<object width="100%" height="100%" type="application/x-shockwave-flash" data="/ofc-library/open-flash-chart.swf" id="chart" style="visibility: visible;"><param name="flashvars" value="wmode=transparent"/></object>

В частности:

<param name="flashvars" value="wmode=transparent"/>

должно быть:

<param value="transparent" name="wmode"/>

Вот как это сделать правильно (обратите внимание на пустой хеш перед params. Wmode - это param, а не flashvar):

swfobject.embedSWF("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf", {}, {"wmode" : "transparent"})

Поскольку вы используете swfObject, попробуйте это:

 var so = new SWFObject("/ofc-library/open-flash-chart.swf", "chart", "100%", "100%", "9.0.0", "expressInstall.swf");
 so.addParam("wmode", "transparent");
 so.write("flashcontent");
Другие вопросы по тегам