2009-07-04 12 views
7

Come impedire che il menu di Javascript venga nascosto in Flash Video (SWFObject).Come impedire che il menu di Javascript venga nascosto in Flash Video (SWFObject)

Sto usando Open Flash Chart e il grafico sta visualizzando bene nel mio carrello php shoppping, ma il mio menu di JavaScript viene nascosto dietro il grafico Flash.

Come risolvere questo problema?

Ecco il mio codice script:


<script type="text/javascript"> 

swfobject.embedSWF(
    "open-flash-chart.swf", "Dashboard_Chart", 
    "800", "400", "9.0.0", "expressInstall.swf", 
    {"data-file":"ofc-chart.php"}); 

</script> 

UPDATE (Risolto):

ho trovato la soluzione.

Ecco il mio nuovo codice che funziona e il menu si presenta bene.


<script type="text/javascript"> 
    var flashvars = {}; 
    var params = {}; 
    params.wmode = "opaque"; 
    var attributes = {}; 
    swfobject.embedSWF("../swf/open-flash-chart.swf", "Dashboard_Chart", "760", "300", "9.0.0", "expressInstall.swf", {"data-file":"ofc-chart.php"}, flashvars, params, attributes); 

</script> 

+0

Si consiglia di aggiungere la soluzione come risposta e il segno è come risposta corretta, come da comprensione SO. –

+0

hmm, ho già segnato una risposta qui sotto. –

+0

@Ibn Saeed scusa per aver rastrellato il passato. Ma ho questo problema in Chrome in questo momento e questa soluzione non ha funzionato. Hai il problema ora? controlla http://jttech.com.hk/design.php grazie per l'attenzione. – Jake

risposta

3

provare ad impostare il parametro wmode a trasparente

swfobject.embedSWF("open-flash-chart.swf", "Dashboard_Chart","800", "400", "9.0.0", 
    "expressInstall.swf", 
    {"data-file":"ofc-chart.php"}, 
    {"wmode":"transparent"} 
); 
+0

Grazie, anche la tua soluzione ha funzionato. Ed era meno prolisso :) –

1

È necessario impostare il wmode a opaco (o trasparente). Questo delega il rendering al browser e consente agli elementi z-index di stare sopra il contenuto Flash. Esempio:

<script type="text/javascript"> 
var flashvars = {}; 
var params = {}; 
params.wmode = "transparent"; 
//params.wmode = "opaque"; 
var attributes = {}; 
swfobject.embedSWF("myContent.swf", "myContent", "300", "120", 
    "9.0.0","expressInstall.swf", flashvars, params, attributes); 
</script> 

Viene fornito con una serie di svantaggi, come ad esempio l'internazionalizzazione rotto e più lenta velocità di rendering, ma otterrà il Flash sotto il vostro menu.

+0

Ho usato opaco e non ho notato alcun ritardo con il flash. La guida di Adobe mostra: #Opaque: rende l'applicazione nasconde tutto dietro di sé nella pagina. ----- #Transparent: rende visibile lo sfondo della pagina HTML attraverso tutte le parti trasparenti dell'applicazione e può rallentare le prestazioni di animazione. –

Problemi correlati