Avatar billede anne-m Nybegynder
14. maj 2004 - 13:38 Der er 56 kommentarer og
1 løsning

klik på en knap og vis en swf.fil i en anden celle

Hold da op hvor er det godt at eksperten kører igen -py ha.
Jeg skal nemlig lave en hjemmeside hvor menuerne består af to .swf-filer.
de skal sættes ind på en html side.
Jeg kan (på grund af layoutet) ikke lave det som en enkelt flashfil (da de to menuer ikke skal sidde ved siden af hinanden) så jeg skal lave det som to filer der kan loade hinanden.
Hvordan gør man det?
Altså på "menu1.swf" skal der være en mouse over (eller klik) der gør at menu2.swf bliver vist og loaded. i en anden celle.
??
jeg skal være færdig med det så hvis der er en sød sjæl der har tid til at hjælpe mig...?
Avatar billede nikolajdu Nybegynder
14. maj 2004 - 13:45 #1
Avatar billede nikolajdu Nybegynder
14. maj 2004 - 13:50 #2
Hvorfor har du oprettet spørgsmålet to gange?
Avatar billede anne-m Nybegynder
14. maj 2004 - 13:53 #3
fordi  jeg ikke ved om det er flash eller javascript. Jeg lukker det andet nu.
Jeg har læst dit link. Jeg forstår det ikke helt. Er det ikke hvis det foregår internt i flash? og ikke så meget hvis det er to swf filer i et html dokument?
Avatar billede pyroman Nybegynder
14. maj 2004 - 13:54 #4
tjaa...

Nåh - jeg havde forstået det sådan at hun skulle vise en helt ny swf, som ikke var der fra load af html...

Men hvis begge swf'er er kodet ind i html'en fra starten kan du bruge localConnection til at loade en anden swf ind i den eksisterende...
Avatar billede pyroman Nybegynder
14. maj 2004 - 13:57 #5
Hvis du har to swf'er i en html kan du kommunikere mellem de to med localConnection - som du ser i linket, så kan du fx skrive en besked i en flash-fil, og en anden skriver den så ud.
På samme måde kan du klikke på noget i én flash fil, hvorved der sker noget i en anden...
Avatar billede anne-m Nybegynder
14. maj 2004 - 13:59 #6
jamen det skal jo ikke være i den eksisterende swf... men i en anden celle (den eksisterende skal stadig være der)
det er et menupunkt "menu" når man holder musen over den skal der komme en undermenu - der er en anden swf fil.
-der ligger i en anden celle.
gir det mening. Hvis layouted var anderledes kunne det jo løses i en enkelt flash fil - men det er ikke rigtig til. (med mindre man kan gøre en swf transparant...
Avatar billede anne-m Nybegynder
14. maj 2004 - 14:00 #7
pyroman ---> du har forstået det helt rigtigt :o)
Avatar billede nikolajdu Nybegynder
14. maj 2004 - 14:02 #8
Mener du at du har en .swf liggende som ikke er indsat på html siden??? Eller er den skjult?
Avatar billede pyroman Nybegynder
14. maj 2004 - 14:05 #9
Selvf. kan du skjule en swf-fil!!!!

smid <object> koden i et div med display: none  :

<div style="display: none;">
<object>....</object>
</div>
Avatar billede anne-m Nybegynder
14. maj 2004 - 14:07 #10
den skal være skjult (indtil man klikker på en anden swf-fil)
Avatar billede anne-m Nybegynder
14. maj 2004 - 14:10 #11
...og så skal jeg have en div rundt om den fil der skal vise den skjulte menu? og skrive et eller andet?? (fiske fiske - hvad skal jeg skrive?)
Avatar billede nikolajdu Nybegynder
14. maj 2004 - 14:12 #12
<div id="menu" style="display:none;">

getURL("java script:document.getElementById('menu').style.display='block'");
Avatar billede pyroman Nybegynder
14. maj 2004 - 14:13 #13
nemlig!

Var ellers lige i gang med at skrive samme - men det er vidst lige meget nu ;)
Avatar billede pyroman Nybegynder
14. maj 2004 - 14:14 #14
...og selvf. "none" i stedet for "block" efter display=  hvis du skal skjule flashen.
Avatar billede nikolajdu Nybegynder
14. maj 2004 - 14:15 #15
Men der kommer klik-lyd på .....
Avatar billede pyroman Nybegynder
14. maj 2004 - 14:24 #16
...er du sikker på det? -det er jo ikke et link - men bare jscript og css...
Avatar billede nikolajdu Nybegynder
14. maj 2004 - 15:15 #17
Tro mig ;-)
Avatar billede anne-m Nybegynder
17. maj 2004 - 09:27 #18
jeg kan godt få den skjult, men jeg kan ikke få den til at komme frem igen. Jeg har prøvet at sætte javascriptet ind i en div omkring flash-objectet. Jeg har desuden prøvet at lægge det ind i flash som "getURL" - jeg kan ikke få den til det.
Hvad kan være problemet?
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 09:31 #19
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"'");
}

Og så på knappen:

on(release){
    showHide();
}
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 09:32 #20
Ups sådan her :

var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"'");
}

Og på knappen :

on(release){
    showHide();
}

/Nikolaj
Avatar billede anne-m Nybegynder
17. maj 2004 - 10:21 #21
jeg prøver og prøver... men jeg kan ikke få det til at spille.

Nu har jeg:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"'");
}
</script>
</head>
<body>
<table width="600" height="186" cellpadding="0" cellspacing="0">
  <tr>
    <td width="3" height="32">&nbsp;</td>
    <td width="511"><div align="right">
      <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" name="hovedmenu" width="100" height="16" id="hovedmenu">
        <param name="movie" value="hovedmenu_ny.swf">
        <param name="quality" value="high">
        <embed src="hovedmenu_ny.swf" width="100" height="16" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="hovedmenu"></embed>
      </object>
    </div></td>
    <td width="84">&nbsp;</td>
  </tr>
  <tr>
    <td height="120">&nbsp;</td>
    <td>&nbsp;</td>
    <td><div id="menu" style="display:none;">
      <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" name="menu" width="84" height="120" id="menu">
        <param name="movie" value="undermenu.swf">
        <param name="quality" value="high"><param name="PLAY" value="false"><param name="LOOP" value="false">
        <embed src="undermenu.swf" width="84" height="120" loop="false" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="menu" swliveconnect="true" play="false"></embed>
      </object>
    </div></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>
</body>
</html>

og på "hovedmenu" swf-filen:
on(release){
    showHide();

Jeg kan stadig ikke få undermenuen "menu" til at reagere...
}
Avatar billede anne-m Nybegynder
17. maj 2004 - 11:38 #22
hvis jeg skriver getURL inde i flashen kan jeg dog få den til at linke (men den skriver bare "block" i øverste venstre hjørne af vinduet)
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 11:54 #23
getURL("java script:document.getElementById('menu').style.display='"+show+"';void(0)");
Avatar billede anne-m Nybegynder
17. maj 2004 - 12:05 #24
Hvad betyder void(0) ?
Jeg har lige sat det ind - det virker heller ikke.

Kan du se på koden om jeg har lavet L... i det?
Hvorfor skrev den "block" da jeg satte getURL("java script:document.getElementById('menu').style.display='"+show+"'");
ind i flash-filen?
jeg er virkelig glad hvis det kommer til at virker - og glad for at du "igen" sætter din tålmodighed på spil for at hjælpe mig. ;o)
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 12:09 #25
Jeg har ikke tid lige nu - Vender tilbage senere :))
Avatar billede anne-m Nybegynder
17. maj 2004 - 12:13 #26
Jamen nu virker det ;o) STORT SMIL TIL DIG!
hvis der er tid senere kan du måske vise mig hvordan jeg gemmer "menu" igen...
men indtil da - tak!
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 12:19 #27
Så skal vi vel tilbage igen?

var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"';void(0)");
}

Og på knappen :

on(release){
    showHide();
}

void(0) eller return false indsættes for at blive på siden.
Avatar billede anne-m Nybegynder
17. maj 2004 - 12:36 #28
kan man gøre sådan, at når man klikker på hovedmenuen igen så forsvinder den flashfil der kom frem da man klikkede før?
klik - kommer frem
klik - forsvinder igen

;o)
Avatar billede anne-m Nybegynder
17. maj 2004 - 12:40 #29
hvad betyder "s" altså: var s = "block"; ?
Avatar billede anne-m Nybegynder
17. maj 2004 - 12:46 #30
kan man ikke skrive at hvis "menu" er synlig, skal den skjules ved onClick - og hvis den er skjult skal den vises ved onClick
(ja - jeg gætter bare...) ;o)
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 13:06 #31
Jeg ser lige at du har indsat

var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"'");
}

som javascript - Det skal være en action i flash.

Altså :

indsæt følgende som action i den frame hvor du har dine knapper :

var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"';void(0);");
}

og så på knapperne :

on(release){
    showHide();
}
Avatar billede anne-m Nybegynder
17. maj 2004 - 13:13 #32
- Så. Nu har jeg rettet det til an action på min frame i stedet for i DW.
;o) og det virker stadig. (heldigvis)
Avatar billede anne-m Nybegynder
17. maj 2004 - 14:56 #33
men kan man gemme "menu" igen når man klikker på "hovedmenuen"?
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 14:59 #34
Ja selvfølgelig men er det ikke det du gør? Ligger de omtalte knapper ikke i "hovedmenuen"?
Avatar billede pyroman Nybegynder
17. maj 2004 - 16:26 #35
Hvis du bruger denne funktion i javascript i din html og kalder den fra flash, burde det virke - den skjuler menuen hvis den er synlig - og viser den hvis den er skjult...

<script language="JavaScript" type="text/javascript">
function showHide(){
  var element = document.getElementById("menu");
  element.style.display = (element.style.display == "none") ? "block" : "none";
}
</script>

og i Flash:

getURL("java script:showHide();");
Avatar billede nikolajdu Nybegynder
17. maj 2004 - 17:26 #36
getURL("java script:showHide();void(0)");
Avatar billede anne-m Nybegynder
18. maj 2004 - 09:10 #37
nicolajdu---> hovedmenuen består af en knap der,når man klikker på den, viser "menu" som er en undermenu(og selve alle linksne til andre sider)

pyroman---> Hvad er forskellen på at jeg lægger scriptet i flash eller i html-filen?

Jeg prøver lige...
Avatar billede anne-m Nybegynder
18. maj 2004 - 09:30 #38
hm.. nu virker det slet ikke. Heller ikke at "menu" skal komme frem når jeg klikker.
Jeg har ellers sat javascriptet ind i html og getURL("java script:showHide();void(0)"); ind på den knap der skal udløse det.
Avatar billede nikolajdu Nybegynder
18. maj 2004 - 09:43 #39
Anne - Mit script var slet ikke ment som javascript, men som flash actions.

Forskellen er ikke noget væsentligt.
Avatar billede anne-m Nybegynder
18. maj 2004 - 11:49 #40
nicolajdu---> jeg ville nok helst have det som actions i flash, for det skal lægges ind i typo3(cms) og det er lettere hvis javascriptet er actions i flash. Men lige nu er der ikke noget af det der virker..

Hvor i scriptet kan man se at den både skjuler og viser "menu" ?
element.style.display = (element.style.display == "none") ? "block" : "none";  (det betyder den skal vise den ik?)
Avatar billede anne-m Nybegynder
18. maj 2004 - 11:59 #41
Mener du at én knap viser og en anden knap skjuler? Jeg ville gerne have at en knap både viste og skjulte...

Kommentar: nikolajdu
17/05-2004 13:06:36    Jeg ser lige at du har indsat
var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"'");
}
som javascript - Det skal være en action i flash.
Altså :
indsæt følgende som action i den frame hvor du har dine knapper :
var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"';void(0);");
}
og så på knapperne :
on(release){
    showHide();
}
Avatar billede anne-m Nybegynder
18. maj 2004 - 12:17 #42
ja---- jeg havde vist lavet noget rod selv.. for nu virker det præcis som du sagde... skjul, vis... perfekt.
Nicolajdu - læg et svar inden jeg finder på flere spørgsmål... ;o)

og 1000 tak for hjælpen (at du ikke droppede at hjælpe mig halvvejs er en gåde...men tak!)

;o)
Avatar billede nikolajdu Nybegynder
18. maj 2004 - 13:52 #43
Jeg kan vel dele med brandstifteren :))

Vil du bytte rundt på rækkefølgen så skriv : var s = "none";

Og der er ingen spørgsmål der er for dumme hvis bare spørger selv bevarer fatningen - sårn da ;-)
Avatar billede anne-m Nybegynder
18. maj 2004 - 13:59 #44
ja... pyroman læg lige et svar... ;o)

tak til jer begge fordi i gad hjælpe.
Avatar billede anne-m Nybegynder
19. maj 2004 - 11:28 #45
øhhh.... nicolajdu... jeg har et spørgsmål til........  hvis jeg godt kunne tænke mig at den skjulte fil bliver loaded (eller går tilbage og starter ved frame 1) hver gang den bliver vist... altså hver eneste gang man klikker på hovedmenuen ville jeg gerne have at "menu" toner frem i stedet for at bare blive vist med det samme.
Jeg troede jeg liiiiige kunne lave det selv ;o)
og skrev det i funktionen:
var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"';void(0);");
    gotoAndPlay(1);

}
men det virkede ikke...
Flash filen kører vel så snart html siden den er placeret på bliver vist (loaded)? og så kan man måske ikke få den til at starte forfra igen?
Jeg ved godt jeg strammer den da du har svaret - men mens vi venter på pyromanen... :o)
Avatar billede nikolajdu Nybegynder
19. maj 2004 - 14:17 #46
Hvis lægger du ikke din fade effekt ind i et movieclip?

clip.gotoAndPlay(1);
Avatar billede anne-m Nybegynder
19. maj 2004 - 14:57 #47
jeg har lavet effekten som et movieclip, der ligger i det øverste lag.
Skal jeg skrive sætte clip.gotoAndPlay(1); ind der hvor jeg har skrevet  gotoAndPlay(1); ?
Alså til sidst i fuktionen showHide der ligger i framen? eller eller ... ?
Avatar billede nikolajdu Nybegynder
19. maj 2004 - 14:59 #48
Du skal lige give dit movieClip "instanse" navn - "clip"
Avatar billede anne-m Nybegynder
19. maj 2004 - 15:34 #49
Nu har jeg lavet en swf fil og importeret den til library - med navnet clip
jeg har lagt den i sit eget lag i den første frame (og sat en stop action)
Så har jeg skrevet clip.gotoAndPlay(1);

var s = "block";
function showHide(){
    show = (s == "block")? s = "none" : s = "block";
    getURL("java script:document.getElementById('menu').style.display='"+show+"';void(0);");
--->>>>    clip.gotoAndPlay(1);
}

Jeg skal måske slet ikke lægge "clip" i et lag?
det virker ikke... nu står det bare og fader ind og ud hele tiden - ret forvirrende! ;o)
Avatar billede nikolajdu Nybegynder
19. maj 2004 - 15:45 #50
Har du husket at indsætte en stop(); action i den sidste frame i "clip"
Avatar billede anne-m Nybegynder
19. maj 2004 - 15:56 #51
nu har jeg prøvet at lægge det ind på stage og at lade være - det virker ikke.
Movie-clippet starter ikke forfra når man klikker på hovedmenuen...

Er det fordi jeg har sat  clip.gotoAndPlay(1); ind forkert? Skal det stå anderledes?
Avatar billede anne-m Nybegynder
24. maj 2004 - 10:03 #52
hmm nå, men hvis pyroman ikke lægger et svar - får du point nicolajdu.
Avatar billede nikolajdu Nybegynder
24. maj 2004 - 11:22 #53
oki doki - Så må vi se om han brokker sig.

Fandt du ud af det sidste problem?
Avatar billede anne-m Nybegynder
03. juni 2004 - 19:52 #54
næ.
men jeg løste problemet på en anden måde (lavede hele siden i flash...)
:o)
men jeg lærer altid noget.
tak for al din gode hjælp.
Avatar billede nikolajdu Nybegynder
03. juni 2004 - 19:52 #55
fint nok :))
Avatar billede pyroman Nybegynder
04. juni 2004 - 13:10 #56
Jeg har af mystiske årsager ikke fået mails fra exp's mailrobot, så har ikke kunnet følge med i alle spørgsmål.
Det er helt fint at nikolaj får pointene... :)
Avatar billede anne-m Nybegynder
11. juni 2004 - 12:53 #57
Hey - det har jeg også oplevet for nylig. ;o( mærkeligt.

nå men LUK.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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