webForumDet fria alternativet

Javascript fungerar på IE samt NS4.7 men inte NS 7

1 svar · 227 visningar · startad av Slippy

SlippyMedlem sedan aug. 20041 inlägg
#1

Är relativt ny vad gäller webprogrammering och har problem att få en toolbar skriven i Javascript att fungera i Netscape 7+ och Safari. Koden fungerar i IE samt NS 4.7, så jag undrar om det finns något sätt att göra kod som fungerar i NS 4.7 kompatibel m NS 7+? Det är väl en helt ny browser vad jag förstår?

Så här ser delar av koden ut:

<script language="javascript">
<!--
if(document.layers){
qStringFixNs = getQueryString('qstring');
if(qStringFixNs != 'loaded'){
nsReloadUrl = document.location.href;
nsReloadUrl = nsReloadUrl + '?qstring=loaded';
document.location.href = nsReloadUrl;
}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
var strPositionString, x, y, autoPosLeft, autoPosTop, popWin
x = ""
y = ""
autoPosLeft = 38;
autoPosTop = 90;
if(autoPosLeft != "" || autoPosTop != ""){
if (document.all) {
if(!isNaN(autoPosTop)) y = window.screenTop + autoPosTop;
if(!isNaN(autoPosLeft)) x = window.screenLeft + autoPosLeft;
}
else if (document.layers) {
if(!isNaN(autoPosLeft)) x = window.screenX + autoPosLeft;
if(!isNaN(autoPosTop)) y = window.screenY + autoPosTop;
}
if(y != "") strPositionString = strPositionString + ",top="+y+",screenY="+y
if(x != "") strPositionString = strPositionString + ",left="+x+",screenX="+x
}
popWin = window.open(theURL,winName,features+strPositionString);
popWin.focus();
}

function hideshow(gnu){
ns = (document.layers)? true:false
ie = (document.all)? true:false

var divvar = new Array();
divvar[0] = "index"
[...]
divvar[34] = "bokatid"

if (ns) {//arrayen motsvarar alla divtaggar i topframen

	for (x=0; x\<=divvar.length -1; x++){
	eval('parent.frames\[0\].document.' + divvar\[x\] + '.visibility = "hide"')
	}//for
	eval('parent.frames\[0\].document.' + gnu + '.visibility = "visible"')
}
if (ie) {
	
	
	for (x=0; x\<=divvar.length -1; x++){
	eval('parent.frames\[0\].' + divvar\[x\] + '.style.visibility = "hidden"')
	}//for
	eval('parent.frames\[0\].' + gnu + '.style.visibility = "visible"')
}

}//function
//-->
</script>
<!-- Start meny -->
<div id="Box">

<!-- Start introduktion -->
<!-- /html/omplastik/omplastik.shtml -->
<div id="divFold0" class="expMenuMain"><a href="" class="expLinxMain" onclick="visaMain(0);hideshow('omplastik'); if(B.ie5 || B.ie4) this.blur(); return false"><img src="/images/menu/main/plastikkirurgi1.gif" name="expPlastikkirurgi" border="0"></a><br>
<div id="divFoldSub0_0" class="expMenuSub"><a href="/html/omplastik/historia.shtml" target="main" class="expLinxSub" onclick="hideshow('historia');"><img src="/images/menu/sub/historia.gif" border="0"></a><br>
<div id="divFoldSub0_0_0" class="expMenuSub2">x</div>
</div>
<div id="divFoldSub0_1" class="expMenuSub"><a href="/html/omplastik/defenitioner.shtml" target="main" class="expLinxSub" onclick="hideshow('def');"><img src="/images/menu/sub/Definitioner.gif" border="0"></a><br>
<div id="divFoldSub0_1_0" class="expMenuSub2">x</div>
</div>
<div id="divFoldSub0_2" class="expMenuSub"><a href="/html/omplastik/skonhetideal.shtml" target="main" class="expLinxSub" onclick="hideshow('skonhet');"><img src="/images/menu/sub/skonhetsideal.gif" border="0"></a><br>
<div id="divFoldSub0_2_0" class="expMenuSub2">x</div>
</div>
<div id="divFoldSub0_3" class="expMenuSub"><a href="/html/omplastik/asikter.shtml" target="main" class="expLinxSub" onclick="hideshow('asikter');"><img src="/images/menu/sub/asikter.gif" border="0"></a><br>
<div id="divFoldSub0_3_0" class="expMenuSub2">x</div>
</div>
</div>
<!-- Slut Introduktion -->

[...]

<!-- Start Dummy - Maste finnas i slutet av menyn -->
<div id="divFold7" class="expMenuMain">_
<div id="divFoldSub7_0" class="expMenuSub">_
<div id="divFoldSub7_0_0" class="expMenuSub2">_</div>
</div>
</div>
<!-- Slut Dummy -->

</div>
<!-- Slut meny -->

Någon som har en aning vad som behöver göras för att få det hela att fungera i NS 7+ (och väldigt gärna Safari också). För den som vill bifogar jag lite mer kod med funktioner som refereras till här.
/S

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Denna meny skulle behöva en rejäl upprustning, eftersom den är anpassad efter gamla standarder. Men en nödlösning kan vara att ändra följande rad:

 ie = (document.all || document.getElementById)? true:false
131 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)