2009-06-04 15 views
7

Ładowanie filmu SWF na stronę HTML za pomocą SWFObject. Chcę dynamicznie zmienić rozmiar tego pliku SWF. W jaki sposób SWFObject może pomóc? Jestem pewien, że nie muszę rozwiązać tego problemu.Zmiana rozmiaru pliku SWF podczas ładowania za pomocą obiektu SWFObject

+0

Myślę, że musisz wyjaśnić, co masz na myśli, mówiąc o "zmianie rozmiaru" flash swf. Sposób, w jaki będzie działał "wewnętrznie", gdy są zmiany wielkości osadzonych, zależy od tego, w jaki sposób stworzyłeś plik SWF w pierwszej kolejności. – grapefrukt

+0

Potrzebuję zmienić rozmiar kontenera SWF ... BTW Wiem o ustawianiu skalowania (Stage.scaleMode) i wyrównaniu (Stage.align) ustawionym w Flash SWF, które mają wpływ na zmianę zawartości podczas zmiany rozmiaru kontenera. –

Odpowiedz

24

Najprostszym rozwiązaniem jest osadzenie pliku SWF w obrębie kontenera div, a następnie użycie JavaScript i CSS do dynamicznej zmiany wielkości kontenera DIV. Jeśli SWF jest ustawiony na 100% szerokość/wysokość, rozciągnie się, aby dopasować go do rozmiaru każdej zmiany rozmiaru opakowania.

W organizmie:

<div id="wrapper"> 
<div id="flash">This div will be replaced by an object via SWFObject</div> 
</div> 

w głowicy:

<script> 
var flashvars = {}; 
var params = { scale: "exactFit" }; 
var attributes = {}; 

swfobject.embedSWF("myContent.swf", "flash", "100%", "100%", "9.0.0","expressInstall.swf", flashvars, params, attributes); 
</script> 

<style type="text/css"> 
#flash { 
    display: block; 
    width: 100%; 
    height: 100%; 
} 
</style> 

Teraz, gdy zmienisz rozmiar #wrapper, SWF będzie skalować, aby je wypełnić.

4

Zapoznaj się z swffit, powinien idealnie pasować do rachunku.

+0

Nie zmienia rozmiaru flash SWF, robi tylko coś dla Div, który je przechowuje. Chciałbym skalować Flash SWF w górę i w dół, podobnie jak zmiana rozmiaru okna Solitaire. –

-1

wierzę powyższy kod powinien brzmieć:

#wrapper { 
    display: block; 
    width: 100%; 
    height: 100%; 
} 
+0

Ten komentarz jest błędny: Dlaczego ustawisz opakowanie na 100%, gdy jego rozmiar ma zostać zmieniony? Weź tylko pod uwagę odpowiedź @pipwerks. –

1

ta nie działa dla mnie, ale zrobił kilka drobnych zmian, jak wskazano w http://code.google.com/p/swfobject/wiki/faq sekcji „Jak mogę utworzyć plik SWF, który obejmie 100% okno przeglądarki? "

jak ten

<style type="text/css" media="screen"> 
    html, body, #containerA, #containerB { height:100%; } 
    body { margin:0; padding:0; overflow:hidden; } 
</style> 

i doskonały!

Powiązane problemy