Javascript menu werkt niet in Firefox

Status
Niet open voor verdere reacties.

fredoffice

Nieuwe gebruiker
Lid geworden
26 jan 2005
Berichten
3
Hoi,

Ik kan niet goed inschatten of dit de juiste plaats is voor mijn vraagje, maar goed...
Ik heb ergens een javscript menu vandaan geplukt wat prima werkt in MSIE, maar het vertikt onder Firefox. Ik heb de code al laten valideren en alles aangepast wat hier uit kwam, maar dat heeft niet geholpen.

Volgens mij gaat Firefox behoorlijk goed om met absoluut positioneren en gebeuren er ook geen gekke dingen in het script.

Iemand een idee waar het fout gaat?

Bij voorbaat dank,
Fred Schonenberg

P.s. In de code wordt op een tweetal plaatsen de o met daarachter een : vervangen door smilies...

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<Html>
<Head>
<TITLE>Testpage</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 

<script language="JavaScript">

var menublock=new Array()
var plus_i=0

menublock[0]="Arial;"+ 			// font mainlink
			 "2;"+				// fontsize mainlink
			 "FFFFFF;"+			// fontcolor mainlink
             "1;"+				// fontweight mainlink, 1 means bold, 0 means normal
             ";;;;"+ 		    // leave it empty
			 "Solutions|intro.htm|content;"   // text and URL of mainlink

menublock[1]="Arial;"+ 			// font mainlink
			 "2;"+				// fontsize mainlink
			 "FFFFFF;"+			// fontcolor mainlink
             "1;"+				// fontweight mainlink, 1 means bold, 0 means normal
             ";;;;"+ 		    // leave it empty
			 "Onderwijs|onderwijs/onderwijs.htm|content;"   // text and URL of mainlink

menublock[2]="Arial;"+ 			// font mainlink
			 "2;"+				// fontsize mainlink
			 "FFFFFF;"+			// fontcolor mainlink
             "1;"+				// fontweight mainlink, 1 means bold, 0 means normal
             ";;;;"+ 		    // leave it empty
			 "Banden|banden/tyreplus.htm|content;"   // text and URL of mainlink
			 
menublock[3]="Arial;"+ 			// font mainlink
			 "2;"+				// fontsize mainlink
			 "FFFFFF;"+			// fontcolor mainlink
			 "1;"+				// fontweight mainlink, 1 means bold, 0 means normal
			 "Tahoma;"+ 		// font sublinks
			 "2;"+				// fontsize sublinks
			 "FFFFFF;"+			// fontcolor sublinks
			 "0;"+				// fontweight sublinks, 1 means bold, 0 means normal
			 "Weermenu|#|;"+	                    // text and URL of mainlink
			 "Option1|vision/intro.htm|content;"+	// text and URL of first sublink
			 "Option2|vision/demodag.htm|content;"+	// text and URL of second sublink
			 "Option3|vision/contact.htm|content;"	    // text and URL of thirth sublink 	

menublock[4]="Arial;"+ 			// font mainlink
			 "2;"+				// fontsize mainlink
			 "FFFFFF;"+			// fontcolor mainlink
			 "1;"+				// fontweight mainlink, 1 means bold, 0 means normal
			 "Tahoma;"+ 		// font sublinks
			 "2;"+				// fontsize sublinks
			 "FFFFFF;"+			// fontcolor sublinks
			 "0;"+				// fontweight sublinks, 1 means bold, 0 means normal
			 "vision Standard|#|;"+	                    // text and URL of mainlink
			 "vision Standard|standard.htm|content;"+	
			 "10 Redenen|10redenen.htm|content;"+	
			 "Veelgestelde vragen|vision/faq.htm|content;"+
			 "Download brochure|vision/factsheet.pdf|_blank;"+	
			 "Demodagen|vision/demodag.htm|content;"+	
			 "Meer informatie|vision/contact.htm|content;"
			 
var menusplit
var urlsplit
var font_weight_main
var font_weight_sub
var font_weight_sub

var minusimg=new Image()
minusimg.src="minus131.gif"

var plusimg=new Image()
plusimg.src="plus131.gif"
			 
var showsubmenus=new Array()
for (i=0;i<=menublock.length-1;i++) {
	showsubmenus[i]=-1
}

var plusminusimg=new Array()
for (i=0;i<=menublock.length-1;i++) {
	plusminusimg[i]=plusimg.src
}

function openandclose(visi) {
	showsubmenus[visi]=(-1)*showsubmenus[visi]
    var menucontent=""
    if (showsubmenus[visi]==1) {plusminusimg[visi]=minusimg.src}
    if (showsubmenus[visi]==-1) {plusminusimg[visi]=plusimg.src}
    menucontent+="<table border=0 cellpadding=0 cellspacing=0>"
	for (i=0;i<=menublock.length-1;i++) {
		menusplit=menublock[i].split(";")
		urlsplit=menusplit[8].split("|")
		if (menusplit[3]==1) {font_weight_main="<b>"}
		if (menusplit[3]==0) {font_weight_main=""}
		if (menusplit[7]==1) {font_weight_sub="<b>"}
		if (menusplit[7]==0) {font_weight_sub=""} 
		menucontent+="<tr><td>"

        
       if (menusplit[9].length==0) {      // Dit is de no-submenu optie 
            menucontent+="<img src='pijl131.gif' border=0>&nbsp;<\/td>"
            menucontent+="<td>"
            menucontent+=font_weight_main
            menucontent+="<a href="+urlsplit[1]+" target="+urlsplit[2]+" class='hoofditem'>"
            menucontent+=urlsplit[0]
            menucontent+="<\/a><\/td><\/tr><tr><td colspan=4 height=10><\/td><\/tr>"
            plus_i++ 
        }
        
        if (menusplit[9].length!=0) {    // Hoofdopties
            var thismainmenu=i+plus_i
            menucontent+="<a href='javascript:openandclose("+i+")'>"
            menucontent+="<img src='"+plusminusimg[i]+"' border=0><\/a>&nbsp;<\/td>"
            menucontent+="<td>"
            menucontent+=font_weight_main
            menucontent+="<a class='hoofditem' href='javascript:openandclose("+i+")'>"
            menucontent+=urlsplit[0]
            menucontent+="<\/a><\/td><\/tr><tr><td colspan=4 height=10><\/td><\/tr>"
   
		    if (showsubmenus[i]==1) {     //Submenu opties
			    for (ii=9;ii<=menusplit.length-1;ii++) {
				    urlsplit=menusplit[ii].split("|")
                    menucontent+="<tr><td><\/td><td>"
    			    menucontent+=font_weight_sub
                    menucontent+="<a class='subitem' href="+urlsplit[1]+" target="+urlsplit[2]+">"
                    menucontent+=urlsplit[0]
                    menucontent+="<\/a><\/td><\/tr><tr><td colspan=4 height=5><\/td><\/tr>"
			    }
		    }
        }    
	}
    menucontent+="<\/table>"
	if (document.all) {
		menu.innerHTML=menucontent
	}
	if (document.layers) {
		document.menu.document.write(menucontent)
		document.menu.document.close()
	}
}

</script>

<link rel=stylesheet href="nav.css" type="text/css">
<STYLE type="text/css">
A {font-family: tahoma;}
a.hoofditem, a:link.hoofditem, a:visited.hoofditem {color:#C9E4FF; text-decoration:none; font-size: 11px;}
a:active.hoofditem, a:hover.hoofditem {color: white; text-decoration:none; font-size: 11px;}
a.subitem, a:link.subitem, a:visited.subitem {color: #EEEEEE; text-decoration:none; font-size: 11px;}
a:active.subitem, a:hover.subitem {color: white; text-decoration: none; font-size: 11px; font-weight: bold;}
</style>
</Head>
<BODY onLoad="openandclose(1000);" BGCOLOR="navy" text="white">

<div id="menu" style="position:absolute; top:60px; left:10px; width:165px;"></div>

</BODY>
</Html>
 
Laatst bewerkt:
Javascript werkt alleen in IE, bij andere browsers werkt ie niet......

Hoi allemaal,

Ook ik heb ergens een script vandaan geplukt. In IE doet hij het geweldig echter in andere browsers werkt hij gewoon niet. Ik kan er zelf niet achter komen wat er fout is. Misschien kunnen jullie eens een kijkje nemen en zien wat er mis is???

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<!--
..........
URL: http://www..........
E-mail: info@...........
Gehele of gedeeltelijke overname, plaatsing op andere sites, verveelvoudiging op welke andere wijze dan ook, particulier en/of
commercieel gebruik, alleen na toestemming van de auteur.
-->
<script language="JavaScript" type="text/JavaScript">
<!-- Beginning of JavaScript -
var textwidth=260
var textheight=60
var message=new Array()
message[0]="..... ........"
message[1]="..... ........."
message[2]="......"
message[3]="............."
var messageurl=new Array()
messageurl[0]="#"
messageurl[1]="#"
messageurl[2]="#"
messageurl[3]="#"
var messagebg=new Array()
messagebg[0]="#A0A0A4"
messagebg[1]="#808080"
messagebg[2]="#A0A0A4"
messagebg[3]="#808080"
var x_finalpos=780
var y_finalpos=95
var x_slices=1
var y_slices=1
var pause=2700
// Do not change the variables below
var xy_slices=x_slices*y_slices
var randomorder=new Array()
for (i=0;i<=xy_slices-1;i++) {
randomorder=i
}

var speed=10
var i_messages=0
var width_slice=Math.floor(textwidth/x_slices)
var height_slice=Math.floor(textheight/y_slices)

var cliptop=0
var clipbottom=height_slice
var clipleft=0
var clipright=width_slice
var spancounter=0
var x_random=new Array()
var y_random=new Array()

function checkbrowser() {
if (document.all) {
initiate()
}
if (document.layers) {
rotatenetscape()
}
}

function initiate() {
if (document.all) {
spancounter=0
for (i=0;i<=y_slices-1;i++) {
for (ii=0;ii<=x_slices-1;ii++) {
var thisspan=eval("document.all.span"+spancounter+".style")
thisspan.posLeft=x_finalpos
thisspan.posTop=y_finalpos
thisspan.clip ="rect("+cliptop+" "+clipright+" "+clipbottom+" "+clipleft+")"
clipleft+=width_slice
clipright+=width_slice
spancounter++
}
clipleft=0
clipright=width_slice
cliptop+=height_slice
clipbottom+=height_slice
}
for (i=0;i<=xy_slices-1;i++) {
var thisspan=eval("span"+i)
thisspan.innerHTML="<a href='"+messageurl[i_messages]+"' target='_blank'>"+message[i_messages]+"</a>"
}
var timer=setTimeout("changemessage()",pause)
}
}

function dissolvemessage() {
if (i_loop<=xy_slices-1) {
var thisspan=eval("span"+randomorder[i_loop])
thisspan.innerHTML="<a href='"+messageurl[i_messages]+"' target='_blank'>"+message[i_messages]+"</a>"
thisspan.style.backgroundColor=messagebg[i_messages]
i_loop++
var timer=setTimeout("dissolvemessage()",speed)
}
else {
clearTimeout(timer)
var timer=setTimeout("changemessage()",pause)
}
}

function changemessage() {
getrandomorder(xy_slices)
i_loop=0
i_messages++
if (i_messages>=message.length) {i_messages=0}
dissolvemessage()
}

function getrandomorder(range) {
for (i=0;i<=range;i++) {
var firstvalue= Math.floor(range*Math.random())
var secondvalue= Math.floor(range*Math.random())
var cachevalue=randomorder[firstvalue]
randomorder[firstvalue]=randomorder[secondvalue]
randomorder[secondvalue]=cachevalue
}
}

function rotatenetscape() {
document.imgcontainer1.document.write("<table width="+textwidth+" height="+textheight+"><tr><td bgcolor="+messagebg[i_messages]+" cellpadding=2 cellspacing=2 align=center><span id='imgcontainer2' class='messageboxNN'><a href='"+messageurl[i_messages]+"' target='_blank'>"+message[i_messages]+"</a></span></td></tr></table>")
document.imgcontainer1.document.close()
i_messages++
if (i_messages>message.length-1) {i_messages=0}
var timer=setTimeout("rotatenetscape()",pause)
}

// - End of JavaScript - -->
</script>
<style>
A {
color : white;
text-decoration : none
}
A:hover {
color : white;
text-decoration : none
}
.messagebox {
position: static;
font-size : 13pt;
font-family : Corbel;
font-weight : bold;
color : white;
border-width : 5px;
border-color:white;
background-color : #A0A0A4;
border-style : solid;
text-align : center;
padding : 5px;
height : 50px;
width : 300px;
}

.messageboxNN {
position:static;
font-size : 10pt;
font-family : Corbel;
font-weight : bold;
color : white;
border-color:white;

}
</style>
<title>....... contactgegevens</title>
<meta name="keywords" content="keyword 1, keyword 2, kewyord 3">
<meta name="description" content="Contactgegevens ..........">
<meta name="robots" content="All">
<meta name="language" content="Nederlands">
<meta name="Author" content=".........">
<meta name="Title" content="........">
<link rel="stylesheet" type="text/css" href="basis.css" />
</head>
<body bgcolor="#000000" text="#00FF00" link="#FF9933" alink="#000000" vlink="#FFFF00" onLoad="checkbrowser()">
<script>
<!-- Beginning of JavaScript -
if (document.all) {
for (i=0;i<=y_slices-1;i++) {
for (ii=0;ii<=x_slices-1;ii++) {
document.write("<div id='span"+spancounter+"' class='messagebox'>")
document.write("</div>")
spancounter++
}
}
}

if (document.layers) {
document.write("<div id='imgcontainer1' class='messagebox'>")
document.write("</div>")
document.close()
document.imgcontainer1.left=x_finalpos
document.imgcontainer1.top=y_finalpos
}
// - End of JavaScript - -->
</script>
<div id="kader">
<div id="kop">
</div>
<div id="hulsrechts">
<div id="hoofdvak">
<h1>Contact</h1>
<p>..........<br>
..........<br>
...............<br>
................<br>
Tel: ............<br>
Gsm:............<br>
.......@...........nl<br>
<a href="mailto:info@.......nl">info@.........nl</a><br>
</p>
</p>
</p>
</p>
</p>
</p>
</p>
</p>
</p>
</div>
</div>
<div id="menu">
<ul>
<li><a href="index.html">Home</a></li>
<li><a href="wiezijnwij.html">Wie zijn wij</a></li>
<li><a href="projecten.html">Projecten</a></li>
<li><a href="fotos.html">Foto's</a></li>
<li><a href="links.html">Links</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</div>

<div id="voet">
<a>&copy 2010 ........</a>
</div>
</div>
</body>
</html>
 
Beste dolean,

Je hebt deze vraag al in een eigen topic gesteld. Je mag daar verder gaan. Hier gaat een slotje op.
slotje.gif
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan