2009-05-20 7 views
71

quando si incorpora un oggetto Flash con il tag <object> e <embed>, c'è un attributo chiamato wmode. Sembra che la maggior parte delle volte, wmode="transparent" sia lo stesso di wmode="opaque" in quanto il Flash non ha effettivamente alcun colore trasparente in modo che l'elemento HTML in basso debba essere mostrato. Di conseguenza, opaque dovrebbe essere più veloce di transparent poiché richiede meno elaborazione per la trasparenza, tuttavia la maggior parte delle volte vedo Flash object incorporato con transparent anziché opaque.differenze tra l'utilizzo di wmode = "transparent", "opaque" o "window" per un oggetto incorporato su una pagina Web

opaque è necessario in modo che l'altro oggetto HTML non venga coperto dall'oggetto Flash (ad esempio, una voce di menu che visualizza un sottomenu extra non verrà coperta dall'oggetto Flash).

A proposito, c'è documentazione formale per wmode di opaque, transparent e window? Sono stato in grado di trovare solo blog che lo descrivono, ma non la documentazione formale. Grazie.

+0

Grazie per spiegare che wmode = "opaco" è necessario in modo che altri elementi HTML non vengono coperte. Incorporare un video su YouTube mi stava facendo impazzire con questo.Il codice di incorporamento predefinito di YouTube non contiene wmode e si sovrapponeva ad altre div anche se avevano valori z-index più alti. Grazie. – raddevus

risposta

34

Ecco alcune debole adobe documentation su diverse impostazioni wmode Flash 9.

Una nota di cautela su wmode transparent è qui nello adobe bug trac.

E nuovi per Flash 10, sono due nuovi wmodes: gpu e direct. Si prega di fare riferimento a Adobe Knowledge Base about wmode.

+6

ottimo, ecco una citazione del doc: wmode - Valori possibili: finestra, opaca, trasparente. Imposta la proprietà Modalità finestra del filmato Flash per trasparenza, stratificazione e posizionamento nel browser. finestra: il film viene riprodotto nella propria finestra rettangolare su una pagina Web. opaco: il film nasconde tutto ciò che c'è nella pagina dietro di esso. transparent: lo sfondo della pagina HTML viene visualizzato attraverso tutte le parti trasparenti del film, questo potrebbe rallentare le prestazioni dell'animazione. –

20

Opaco causerà meno sforzi del sistema poiché "trasparente" tenterà ancora di applicare alfa. La ragione per cui si vede trasparente è invece dovuta al fatto che la maggior parte degli autori web non presta attenzione ai dettagli (cioè, semplicemente copia-incolla del codice embed trovato).

BTW, sei corretto sul fatto che non è documentato. Il migliore che abbia mai visto è un blog di un ragazzo che afferma di avere parlato con uno sviluppatore Macromedia allo. Sfortunatamente non riesco a trovare il link.

EDIT: Penso che sia stato questo: http://www.communitymx.com/content/article.cfm?cid=e5141

7

inoltre, con wmode=opaque e con IE, il Flash riceve gli eventi della tastiera, ma anche la pagina html li riceve, quindi non può essere utilizzato per qualcosa come l'incorporamento di un gioco in flash. Molto fastidioso

+1

Questo non risponde alla domanda. – kapa

+3

@bazmegakapa: come questo non risponde alla domanda? è una differenza molto importante nel comportamento (l'ho sofferto su un sito web di giochi molto importante che lo rendeva inutilizzabile :() e un dif molto poco documentato – MegaTux

+4

L'OP chiedeva risorse su questi argomenti. Commento importante a mio parere – kapa

2

Una cosa bizzarra è che in Chrome + Firefox, l'evento MOUSE_LEAVE non viene inviato per OPAQUE e TRANSPARENT.

Con WINDOW funziona correttamente. Ci è voluto del tempo per scoprirlo! grr ...

(nota: jediericb menzionato this bug - che è simile, ma non menziona MOUSE_LEAVE)

Problemi correlati