2009-03-30 5 views
5

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

Кроме того, я использую 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> 

Page showing problem (Это в настоящее время не показывают г-индексный попытку исправить.)

ответ

15

Режим окна тег не был установлен правильно.

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

<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"/> 

Вот как это сделать правильно (обратите внимание на пустой хэш перед параметрами. Режим окно является пары не FlashVar):

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

Что сработало великолепно. Благодаря! – MECU

+0

Совет: используйте только wmode прозрачный, если вам действительно нужен ваш SWF, чтобы он был прозрачным. wmode opaque должен работать одинаково хорошо для ваших нужд и потребляет гораздо меньше системных ресурсов. он также намного менее глючен, чем прозрачный wmode. – pipwerks

2

Поскольку вы используете 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");