hmmm, wichtige frage

Samuel

Erfahrenes Mitglied
ähhh
wieso funktioniert dieses script nicht?
Code:
<html>
	<head>
		<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1">
		<meta name="generator" content="Adobe GoLive 5">
		<title>..::..   welcome to www.web-creations.at ..::..&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</title>
		<script language="JavaScript">
		function changeImg(imgdivName, imgSrc, onoff) {
		var d=document;
		var ref;
		document.images[imgdivName].src=imgSrc;
		if (onoff=="on") {
			if (d.all) {
				d.all[imgdivName].style.visibility='visible';
			} else if ((!d.all) && (d.getElementById)) {
				ref=d.getElementById(imgdivName);
				ref.style.visibility='visible';
			} else if (d.layers) {
				d.layers[imgdivName].style.visibility='show';
			}
		} else if (onoff=="off") {
			if (d.all) {
				d.all[imgdivName].style.visibility='hidden';
			} else if ((!d.all) && (d.getElementById)) {
				ref=d.getElementById(imgdivName);
				ref.style.visibility='hidden';
			} else if (d.layers) {
				d.layers[imgdivName].style.visibility='hide';
			}	
		}
		}		
		</script>	
	</head>
	<body bgcolor="#ffffff">
	<table cellpadding=0 cellspacing=0 border=0 width=100% height=100%>
		<tr>
			<td align="center">
			<img src="gfx/black1px.gif" width=100% height=1><p>
			<a href="main.php?action=news" onmouseover="changeImg('news', 'gfx/news.gif', 'on');" onmouseout="changeImg('news', 'gfx/gaunews.gif', 'off');"><img src="gfx/gaunews.gif" border=0 name="news"></a>&nbsp;&nbsp;&nbsp;&nbsp;
			<a href="main.php?action=news" onmouseover="changeImg('scripts', 'gfx/scripts.gif', 'on');" onmouseout="changeImg('scripts', 'gfx/gauscripts.gif', 'off');"><img src="gfx/gauscripts.gif" border=0 name="scripts"></a>&nbsp;&nbsp;&nbsp;&nbsp;
			<a href="main.php?action=news" onmouseover="changeImg('tutorials', 'gfx/tutorials.gif', 'on');" onmouseout="changeImg('tutorials', 'gfx/gaututorials.gif', 'off');"><img src="gfx/gaututorials.gif" border=0 name="tutorials"></a>&nbsp;&nbsp;&nbsp;&nbsp;
			<a href="main.php?action=news" onmouseover="changeImg('misced', 'gfx/misced.gif', 'on');" onmouseout="changeImg('misced', 'gfx/gaumisced.gif', 'off');"><img src="gfx/gaumisced.gif" border=0 name="misced"></a>&nbsp;&nbsp;&nbsp;&nbsp;
			<a href="main.php?action=news" onmouseover="changeImg('contacts', 'gfx/contacts.gif', 'on');" onmouseout="changeImg('contacts', 'gfx/gaucontacts.gif', 'off');"><img src="gfx/gaucontacts.gif" border=0 name="contacts"></a>&nbsp;&nbsp;&nbsp;&nbsp;<p>
			<img src="gfx/black1px.gif" width=100% height=1>
			</td>
		</tr>
	</table>
	<div id="news" style="position:absolute; width:100px; height:100px; left:100px; top:100px; visibility:hidden;">
	bla und blub
	</div>
	<div id="scripts" style="position:absolute; width:100px; height:100px; left:100px; top:100px; visibility:hidden;">
	bla und blub
	</div>
	<div id="tutorials" style="position:absolute; width:100px; height:100px; left:100px; top:100px; visibility:hidden;">
	bla und blub
	</div>
	<div id="misced" style="position:absolute; width:100px; height:100px; left:100px; top:100px; visibility:hidden;">
	bla und blub
	</div>
	<div id="contacts" style="position:absolute; width:100px; height:100px; left:100px; top:100px; visibility:hidden;">
	bla und blub
	</div>	
	</body>
</html>
 
nichts liebe ich mehr als derart vielsagende Einleitungssätze, die die genaue Fehlermeldung schildern und etwaige Vermutungen über die Ursache gefolgt von einem kurzen Quelltext, der sich auf den verdächtigen Codebereich beschränkt. :-)
 
8)

nichts liebe ich mehr als derartige hilfen

also ich will das wenn man mit der maus über eines der bilder fährt, das es dann erstens das bild wechselt, was es auch macht --> normaler rollover
und ich will das wenn man über einem image ist das es auch dann die zugehörige <div>-kacke einblendet

beim rausfahren soll das div verschwinen und das alte image soll wieder rein

fehler wird wahrscheinlich in der funktion liegen oder irgendwo bei den evenhandlers

ps: jetzt besser? 3-)
 
Sooo...

Hab´ mal eben Javascript gelernt um Dir Deine
Frage zu beantworten :-) :

<html>
<head>
<title>bla</title>
<script language="JavaScript" type="text/javascript">
<!--
function changeImg(imgName, imgSrc, onoff) {
var d = document;
document.images[imgName].src = imgSrc;
var divName = imgName+1;
var css = (d.layers) ? d.layers[divName] : d.all ? d.all[divName].style : d.getElementById(divName).style;
var hid = (d.layers) ? "hide" : "hidden";
var vis = (d.layers) ? "show" : "visible";
css.visibility = (css.visibility == vis) ? hid : vis;
}
//-->
</script>
</head>

<body bgcolor="#ffffff">

<table cellpadding="0" cellspacing="0" border="0" width="100%" height="100%">
<tr>
<td align="center">
<a href="main.php?action=news" onmouseover="changeImg('news', 'bild1b.gif', 'on');" onmouseout="changeImg('news', 'bild1a.gif', 'off');"><img src="bild1a.gif" border=0 name="news"></a>
</td>
</tr>
</table>

<div id="news1" style="position:absolute; width:100px; height:100px; left:100px; top:100px; visibility:hidden;">
bla und blub
</div>

</body>
</html>

Offensichtlich kann man einen Namen nicht
gleichzeitig als name und als Id verwenden.

Hab Dein Script ausserdem mal etwas ver-
kleinert, bei Fragen meld´ Dich.

Tribal
 
Zuletzt bearbeitet:
thX, aber ...

danke für deine antwort, ich wär dir sehr dankbar wenn du mir das mit dem ? :-stuff erklären könntest, ich denke es ist so ne art if-else-zeugs
aber ich komm net ganz drauf,
wär dir bei einer antwort sehr dankbar ;-)
 
ups

ich hab den fehler übersehn sorry :(
hab zweimal imgname news anstatt einmal news und einmal blub
sorry, aber für das ? :-zeugs wär ich trotzdem dankbar

greets daIllu ;-)
 
Hm …

Hat jetzt alles funktioniert, oder wie?
ich hab den fehler übersehn sorry
hab zweimal imgname news anstatt …
Bin ich nicht ganz schlau draus geworden.

Wie auch immer. Diese ?: ist in der Tat
so ´ne Art "if … else" Routine. Oder besser
"entweder … oder", z.B.:
var hid = (d.layers) ? "hide" : "hidden";
Mit d.layers wird überprüft, ob der Browser
das Objekt layers kennt. Wenn ja, dann wird
der Variablen hid der Wert "hide" zugeordnet.
Wenn nein, dann ist hid="hidden".

Beispiel 2:
var css = (d.layers) ? d.layers[divName] : d.all ? d.all[divName].style : d.getElementById(divName).style;
Mit d.layers wird wie oben überprüft, ob der
Browser layers kennt (dann wäre es ein netscape).
Wenn ja, dann ist css=d.layers[divName]. Bei
nein wird eine zweite Abfrage gestartet. Ent-
weder
der Browser kennt d.all, dann ist
css=d.all[divName], oder er kennt d.all nicht,
dann ist css=d.getElementById(imgName).

Ich hoffe, daß war verständlich. Als ich sowas das
erste mal gesehen habe, war ich froh, daß das Script
lief. Verstanden habe ich es erst heute morgen :-) .

Tribal
 
danke für die rasche und ausführliche antwort

super erklärung
bin dir echt dankbar, versteh auch alles ;-)
also danke für die hilfe
greets daIllu
 

Neue Beiträge

Zurück