Avatar billede neander Nybegynder
17. februar 2004 - 11:31 Der er 12 kommentarer og
1 løsning

Hjælp til funktion på grafik

Jeg har et frameset, hvor der i venstre side er nogle knapper i gif. Når jeg så trykker på f.eks. knappen "produkter" som får siden produkter til at dukke på i mit target "main" så skal knappen ændre sig til en anden gif, indtil der klikkes et andet sted hen.

Hvordan gør jeg det nemmest? Findes der nogle færdige koder til det et sted? ... lette at anvende.
Avatar billede mm12010 Nybegynder
17. februar 2004 - 11:52 #1
på sider du loader i din 'main' kan du indsætte føldende:

parent.FrameNavn.BilledNavn.src='mappe/filNavn.gif';
Avatar billede o-zone Nybegynder
17. februar 2004 - 11:59 #2
jeps ... men du kommer ikke udenom også at skulle resette de gamle billeder!
Avatar billede neander Nybegynder
17. februar 2004 - 12:03 #3
mm12010 >> jeg bliver nødt til at få det skåret lidt ud i pap. Jeg er lidt laaaaaaaangsom i optrækket, er netop vendt tilbage efter "ferie".

hvad skal der stå i billednavn? skal billedet have et navn? og hvor skal hele linjen stå i det hele taget?
Avatar billede mm12010 Nybegynder
17. februar 2004 - 12:11 #4
menu:

<img name="produkt_menu" src="produkt_menu.gif" alt="">
<img name="anden_menu" src="anden_menu.gif" alt="">
<img name="tredje_menu" src="tredje_menu.gif" alt="">


produkt side:

<head>
<script language="javascript" type="text/javascript">
parent.menu.produkt_menu.src='produkt_menu_aktiv.gif';
parent.menu.anden_menu.src='anden_menu.gif';
parent.menu.tredje_menu.src='tredje_menu.gif';
</script>
Avatar billede neander Nybegynder
17. februar 2004 - 12:47 #5
Jeg får en fejl om at parent.menu.knap1 er null.

produktsiden:
<head>
<script language="javascript" type="text/javascript">
parent.menu.knap1.src='img/forsideknap_a.gif';
parent.menu.knap2.src='img/firmaprofilknap_a.gif';
parent.menu.knap3.src='img/produkterknap_b.gif';
parent.menu.knap4.src='img/kontaktknap_a.gif';
</script>


menusiden:
<a href="main.asp" target="main"><img name="knap1" src="img/forsideknap_a.gif" border="0"></a><br>
<a href="firmaprofil.asp" target="main"><img name="knap2" src="img/firmaprofilknap_a.gif" border="0"></a><br>
<a href="produkter.asp" target="main"><img name="knap3" src="img/produkterknap_a.gif" border="0"></a><br>
<a href="kontakt.asp" target="main"><img name="knap4" src="img/kontaktknap_a.gif" border="0"></a>
Avatar billede neander Nybegynder
17. februar 2004 - 12:49 #6
undskyld... "menu" skulle skiftes ud med "left" nu virker det. Læg et svar mm
Avatar billede o-zone Nybegynder
17. februar 2004 - 12:50 #7
her er et eksempel på hvad der kunne ligge i din navi frame. Mit løsningsforslag indebærer kun scripts på navisiden. Det er vigtigt at origImages og valgtImages indeholder samme mængde elementer (antallet af menupunkter)!
---8<----------
<body>
<script language="javascript" type="text/javascript">

var origImages = [new Image(),new Image(),new Image(),new Image()];
var valgtImages = [new Image(),new Image(),new Image(),new Image()];

// initializing images
for (var i=0;i<origImages.length;i++){
    origImages[i].src = "menu"+i+"standard.gif";
}
for (var i=0;i<origImages.length;i++){
    valgtImages[i].src = "menu"+i+"valgt.gif";
}

function setMenuPictures(menuNummer){
    for(var i=0;i<origImages.length;i++){
        if (i!=menuNummer) { eval("document.images['menu"+i+"'].src=origImages["+i+"].src;"); }
        else { eval("document.images['menu"+i+"'].src=valgtImages["+i+"].src;"); }
    }
}

</script>

<base target="main">
<a href="http://www.dr.dk" onclick="setMenuPictures(0); return true;"><img name="menu0" src="menu0standard.gif" border="0"></a><br>
<a href="http://www.tv2.dk" onclick="setMenuPictures(1); return true;"><img name="menu1" src="menu1standard.gif" border="0"></a><br>
<a href="http://www.tv3.dk" onclick="setMenuPictures(2); return true;"><img name="menu2" src="menu2standard.gif" border="0"></a><br>
<a href="http://www.tvdanmark.dk" onclick="setMenuPictures(3); return true;"><img name="menu3" src="menu3standard.gif" border="0"></a><br>

</body>
---8<----------

dine menu images skal hedde:
menu0standard.gif
menu0valgt.gif
menu1standard.gif
menu1valgt.gif
osv.

og du skal huske at køre fra 0 til antallet af menupunkter-1 (altså som i mit eksempel fra 0-3 for en fire punkters menu

(-:H@zze
Avatar billede o-zone Nybegynder
17. februar 2004 - 12:51 #8
damn damn damn ... lige sent nok med en besvarelse :(
Avatar billede neander Nybegynder
17. februar 2004 - 12:53 #9
ja, o-zone... jeg fant selv fejlen :o) mm's script er perfekt *s*
Avatar billede mm12010 Nybegynder
17. februar 2004 - 12:54 #10
svar :o)
Avatar billede o-zone Nybegynder
17. februar 2004 - 12:55 #11
anyway - giv bare pointene til mm han kom først med noget der virker. Men principielt mener jeg at det giver mere mening at lade scripts der manipulerer elementer på en html side ligge på de sider de manipulerer hvis det overhovedet er muligt. Så er det mindre mystisk hvor ændringen kommer fra når du om 3 måneder skal ændre i scriptet.

Mit løsningsforslag vil heller ikke kræve at du har adgang til kildekoden på siderne i main framen (som det ses af mine eksempler)

(-:H@zze
Avatar billede neander Nybegynder
17. februar 2004 - 12:57 #12
det er kun 4 forskellige flade sider der er tale om... 4 menupunkter i alt, så jeg synes da at mm's forslag fungerer perfekt... enkelt, simpelt og sødt.
Avatar billede mm12010 Nybegynder
17. februar 2004 - 12:59 #13
hehe - det må være første gang jeg hører nogen kalde et JavaScript sødt :-)
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