Avatar billede kimdolleris Nybegynder
01. september 2006 - 14:15 Der er 9 kommentarer og
1 løsning

Random swf'ing

Hej!

Jeg vil gerne loade nogle swf random for hver gang jeg refresher... Har fundet et script som jeg har tilpasset lidt mht antal swf'er der skal vises, men det virker ikke efter hensigten. Faktisk kan jeg slet ikke se det.

<!-- SCRIPT START -->

<script language="JavaScript">

// Tilfældig nummervalg
var randomnumber = Math.round(Math.random()*8);

// Tilfældig videovalg
if (randomnumber == 1)

{movie1();}

else if (randomnumber == 2)

{movie2();}

else if (randomnumber == 3)

{movie3();}

else if (randomnumber == 4)

{movie4();}

else if (randomnumber == 5)

{movie5();}

else if (randomnumber == 6)

{movie6();}

else if (randomnumber == 7)

{movie7();}

else {movie8();}

// Skal skrive flash-embed-koden i selve dokumentet

function movie1(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film01.swf"><param name=quality value=high><embed src=\"film01.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}

function movie2(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film02.swf"><param name=quality value=high><embed src=\"film02.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}

function movie3(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film03.swf"><param name=quality value=high><embed src=\"film03.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}
function movie4(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film04.swf"><param name=quality value=high><embed src=\"film04.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}
function movie5(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film05.swf"><param name=quality value=high><embed src=\"film05.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}
function movie6(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film06.swf"><param name=quality value=high><embed src=\"film06.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}
function movie7(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film07.swf"><param name=quality value=high><embed src=\"film07.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}
function movie8(){
document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0\" width=\"507\" height=\"218\"><param name=movie value=\"film08.swf"><param name=quality value=high><embed src=\"film08.swf" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"507\" height=\"218\"></embed></object>")
}

</script>

<!-- SCRIPT SLUT -->

Hvordan executer jeg det? Skal det ligge direkte i html'en, eller skal det smides i head'en? Findes der et alternativ (det er vigtig at det er seperate swf'er - altså ikke random kodet i flash) :D


HELP! :D
Avatar billede thesurfer Nybegynder
01. september 2006 - 14:27 #1
Så er det bedre med:

// Tilfældig nummervalg
var randomnumber = Math.round(Math.random()*8);

fil = 'film0' + randomnumber + '.swf';

document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="507" height="218"><param name=movie value="film08.swf"><param name=quality value=high><embed src="film08.swf" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="507" height="218"></embed></object>');


Så skal du ikke bruge funktioner eller if-sætninger..

Men!:
På grund af en tabt retssag, blev alle browser-udvikler nødt til at ændre den måde plugins loades på.
Nu skal man klikke på plugin (Flash objektet), før man kan bruge det.

Der er et JavaScript-script der automatisk fixer dette problem.. finder det lige til dig..
Avatar billede thesurfer Nybegynder
01. september 2006 - 14:29 #2
Rettelse til document.write-koden:

// Tilfældig nummervalg
var randomnumber = Math.round(Math.random()*8);

// Dan filnavn:
fil = 'film0' + randomnumber + '.swf';

// Udskriv HTML-plugin-kode:
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="507" height="218"><param name=movie value="' + fil + '"><param name=quality value=high><embed src="' + fil + '" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="507" height="218"></embed></object>');


Disse linier erstatter alle dine funktioner og IF-sætninger.
Avatar billede thesurfer Nybegynder
01. september 2006 - 14:31 #3
"SWFObject: Javascript Flash Player detection and embed script": http://blog.deconcept.com/swfobject/
Avatar billede thesurfer Nybegynder
01. september 2006 - 14:35 #4
Eksempel:

<!-- HUSK DOCTYPE! -->
<html>
<head>
<title>din titel</title>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/JavaScript">
// Tilfældig nummervalg
randomnumber = Math.round(Math.random()*8);

// Dan filnavn:
fil = 'film0' + randomnumber + '.swf';
</script>
</head>
<body>

noget indhold her.. og så flash:<br>

<div id="flashcontent">
  This text is replaced by the Flash movie.
</div>

<script type="text/javascript">
  var so = new SWFObject(fil, "mymovie", "507", "218", "7", "#336699");
  so.addParam("quality", "low");
  so.addParam("wmode", "transparent");
  so.addParam("salign", "t");
  so.write("flashcontent");
</script>

noget mere indhold her..

</body>
</html>
Avatar billede thesurfer Nybegynder
01. september 2006 - 14:36 #5
For at det kan virke, skal du lige download swfobject.js og putte filen i samme mappe, som den side der skal vise Flash filen:

http://blog.deconcept.com/swfobject/
Download - http://blog.deconcept.com/swfobject/#download
Avatar billede kimdolleris Nybegynder
01. september 2006 - 14:46 #6
Taaark... Jeg prøver det lige, men det ser ud til at du sagtens kan "svare" :D
Avatar billede thesurfer Nybegynder
01. september 2006 - 14:52 #7
Det gør jeg så :-)
Avatar billede kimdolleris Nybegynder
01. september 2006 - 15:05 #8
hmm... så eksmplet er med swfobject og :

// Tilfældig nummervalg
var randomnumber = Math.round(Math.random()*8);

// Dan filnavn:
fil = 'film0' + randomnumber + '.swf';

// Udskriv HTML-plugin-kode:
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="507" height="218"><param name=movie value="' + fil + '"><param name=quality value=high><embed src="' + fil + '" quality=high pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="507" height="218"></embed></object>');

... er uden?
Avatar billede kimdolleris Nybegynder
01. september 2006 - 15:08 #9
yessir... det virker! Tak igen!
Avatar billede thesurfer Nybegynder
01. september 2006 - 15:11 #10
Det var så lidt, og takker for points.. :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester