webForumDet fria alternativet

Experthjälp ang. klassbyte över frames

3 svar · 257 visningar · startad av Type

TypeMedlem sedan mars 20021 239 inlägg
#1

Hej!
Jag har suttit o funderat lite men känner att jag inte kan javascript tillräckligt bra för att klara av biffen... tänkte höra här istället, vet att det finns kompetent folk här som fixar det i ett nafs :D

Problemet är att jag har några frames... Hur de ser ut kan ni se nere i bifogade filen... De namn som är kursiva ligger i en inre indexfil... Detta för att man ska byta alla tre ramarna (topF, leftF och mainF). Detta kan kanske verka onödigt, eller??? Jag tror att jag tycker att det verkar jobbigt o uppdatera flera ramar som annars skulle bli fallet...

Nu till själva problemet:
I ramen topF ligger en undermeny som tex innehåller tre menyalternativ... När man startar är första menyalternativet valt och då understruket. När man trycker på alternativ två ska det första alternativets understrukning försvinna och alternativ två understrukas... Detta för att man ska se på vilken sida man är....

Det fungerar om man trycker på menyalternativen helt normalt, men om jag kommer från ett annat ställe (en länkning från en annan sida så uppdateras inte topF med rätt understrukningar).
Det är detta jag måste försöka göra på något sätt... Jag vet hur man byter klass i annan frame (så att vi understruker rätt) men jag måste fortfarande ta bort understrukningen från det menyalternativ vi är på... För att veta vilket menyalternativ vi är på har jag en global variabel... Om jag bara kunde nå den globala variabeln från en annan sida....

Kodsnutt för hur menyväxlingen fungerar som ligger i topF:

<script type="text/javascript">
	var gl;
	
	function changeClass(obj,cl){
		sw(gl,'nonactive');
		sw(obj,cl);
		gl=obj;
	}
	
	function sw(obj,cl){
		obj.className=cl;
		var children=obj.childNodes;
		for (var i=0;i<children.length;i++){
			if(children[i].tagName){ children[i].className=cl; }
		}
	}
	
	function init(objId){
		gl=document.getElementById(objId);
	}
</script>
<div id="undermenu">
	<a href="k_main.html" onclick="changeClass(this,'active');" class="active" id="k1" target="mainF">Kroppsverkstan</a> &nbsp;&nbsp;
	<a href="ommig.html" target="mainF" onclick="changeClass(this,'active');" id="k2">Om mig</a> &nbsp;&nbsp;
	<a href="kontaktamig.html" target="mainF" onclick="changeClass(this,'active');" id="k3">Kontakta mig</a>
</div>

:r
Ojdå... Detta blev lite väl långt o komplicerat... Jag hoppas att någon förstår hur jag ska göra eller iaf hjälpa mig på vägen.. finns någon lättare lösning?

Man kanske tex kan loopa igenom alla menyalternativ och ta bort understrukning på alla, även de som inte har någon... Då skulle vi inte behöva den globala variabeln... eller? Jag behöver lite guidehjälp i javascriptdjugeln... :birp

TypeMedlem sedan mars 20021 239 inlägg
#2

Gaah, glömde den bifogade filen som jag ritat så fiiin ;)

s_frames.gif
TypeMedlem sedan mars 20021 239 inlägg
#3

Jag fortsätter kämpa på... Nu med en lite annorlunda uppbyggnad... Kan man nå en javascriptfunktion från en annan sida? Från en frame till en annan?

TypeMedlem sedan mars 20021 239 inlägg
#4

Nu har jag löst det...

Jag använde bland annat denna tråd som hjälp.
http://www.webforum.nu/showthread.php?s=&forumid=24&threadid=76427

Sen gjorde jag om så alla frames låg i samma... Tyckte det verkade jobbigt med flera index-sidor...

Hoppas det va till någon hjälp iaf :birp

136 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)