Avatar billede skjoldby Nybegynder
28. maj 1999 - 23:38 Der er 5 kommentarer og
1 løsning

Mussedynamik i rammer????

Jeg er ved at lave en homepage bestående af to rammer: Menu og Indhold.

Menuen skal bestå som navigationspanel, med mussedynamik.
Min <HEAD> i menu-filen indeholder bla:
infopassiv=new Image(); infopassiv.src=''pics/infopas.gif'';
infoaktiv=new Image(); infoaktiv.src=''pics/infoakt.gif'';

Min <BODY> i menuen indeholder bla:
<IMG SRC="infopassiv.gif" WIDTH="102" HEIGHT="25 BORDER="0" usemap="#info" name="info">
<map name="info">
<area shape="rect" coords="0,0,10,10" href="info.html" target="indhold"
onMouseOver="document.info.src=infoaktiv.src; return true"
onMouseOut="document.info.src=infopassiv.src; return true">

Det virker efter hensigten, men jeg ønsker også at når f.eks. info vises i rammen ”Indhold” skal knappen "infoaktiv" være slået til. – På nuværende tidspunkt bruger jeg en specialmenu til hver aktive/valgte knap/emne, men det bliver uoverskueligt hvis jeg f.eks. skulle have 50 knapper(overdrivelse fremmer forståelsen). Hvordan kan dette gøres med JavaScript?
Avatar billede justincase Nybegynder
04. juni 1999 - 15:52 #1
Med hensyn til at få de enkelte sider til at aktivere deres respektive knapper, bør du gøre det på en lidt anden måde. :

<script language="JavaScript">
function mouIn(navn) {
  var obj = eval("document.images['"+navn+"']");
  obj.src = "pics/"+navn+"akt.gif";
}

function mouOut(navn) {
  var obj = eval("document.images['"+navn+"']");
  obj.src = "pics/"+navn+"pas.gif";
}
</script> 
<body>
<IMG SRC="infopassiv.gif" WIDTH="102" HEIGHT="25 BORDER="0" usemap="#info" name="info">
<map name="info">
<area shape="rect" coords="0,0,10,10" href="info.html" target="indhold" onMouseOver="mouIn('info')" onMouseOut="mouOut('info')">
</map>

til sidst på hml siden :
</body>
<script language="JavaScript">
var loaded = 1;
</script>
</html>

Fra de andre sider kan du så kalde indhold rammen således (for siden "info") :

<body onload="if(top.menu.loaded == 1) top.menu.mouIn('info')">


JustinCase
Avatar billede skjoldby Nybegynder
04. juni 1999 - 22:39 #2
MouseOver og MouseOut funktionen er fed, men jeg kan ikke få knappen "INFO" til at være slået til, når "INFO" vises i rammen indhold. Jeg har prøvet at bruge copy/paste på dit forsalg og sat det ind i et ny dokument, men uden held...
Mangler der noget???

skjoldet
Avatar billede justincase Nybegynder
05. juni 1999 - 17:03 #3
Som det er nu vil den aktive knap ikke blive ved med at være slået til så snart musen føres væk.

Prøv det her istedet :
Sæt denne funktion ind

var active = ""
function setActive(navn) {
  active = navn;
  mouIn(navn);
}

Rediger mouOut funktionen

function mouOut(navn) {
  if (navn != active) {
    var obj = eval("document.images['"+navn+"']");
    obj.src = "pics/"+navn+"pas.gif";
  }
}


Og din Area map

<area shape="rect" coords="0,0,10,10" href="info.html" target="indhold" onMouseOver="mouIn('info')" onMouseOut="mouOut('info')" onClick="setActive('info')>


og til sidst  de forsk. siders bodytag

<body onload="if(top.menu.loaded == 1) top.menu.setActive('info')">


Jeg ved ikke lige om det var det du mente, men ellers skriv igen

JustinCase
Avatar billede skjoldby Nybegynder
06. juni 1999 - 13:59 #4
Det virker.... fedt!

jeg tilføjede lige en lille funktion til at deaktivere igen:

var deactive = ""
function setDeActive (navn) {
  deactive = navn;
  mouOut(navn);
}

og tilføjede i bodytag på de forskellige sider:

onUnLoad="top.menu.setDeActive('info')"

Tak for hjælpen...
Avatar billede skjoldby Nybegynder
06. juni 1999 - 14:03 #5
Forresten, hvad med dine points. Hvorfor sender du ikke ind som svar???

Skjoldet.
Avatar billede justincase Nybegynder
06. juni 1999 - 14:22 #6
Jeg sendte ikke ind som svar, fordi jeg ikke var sikker på at det første svar var nok !
Pointene kommer i anden række, man lærer selv af at svare.

Det betyder selvfølgelig ikke at jeg ikke vil ha' dem ;)

JustinCase
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

IT-JOB

Københavns Universitet

Platform Engineer

Netcompany A/S

Network Engineer

Styrelsen for Danmarks Fængsler

IT-driftskonsulent til Linux-baserede platforme

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Informationssikkerhedsofficer til Akkreditering & Compliance