• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Bin neu, probleme bei MouseOver Quelltext

THEXUL

New member
Hi
Ich hoffe mir kann wer helfen, ich lerne erst gerade Java, hab jetzt aus nem Buch den Script für schaltflächen die sich verändern, wenn man die Maus drüber hält ABGESCHRIEBEN (ihr könnt jetzt sagen ich spinne, aber ich hoffte das ich was lerne, hab ich auch aber eben nicht alles ;))
Nun wollte ich fragen, was ist am unten stehenden Script falsch (ich nehme an, an einigen Stellen wurde Bsp: ihr Bild.jpg stat zum beispiel Haus.jpg)
Wenn wer Zeit hat, bitte schaut euch das an und postet was falsch ist, bitte irgendwie rot markieren und GENAU sagen was ich änder muss, wie gesagt ich bin NEU!!!

<html>
<head>

<title>Übungsdatei</title>

<script language="javascript">

<!--
Browsertyp=parseInt(navigator.appVersion);
Browser=false;
ie3=false;
ie4=false;
ns4=false;
if (navigator.appName== "Netscape")
{if (Browsertyp>=4)
{Browser=true;
ns4=true;
}}
else
{if (Browsertyp>=4)
{ie4=true;
Browser=true;
}
else
{if (Browsertyp==3)
{ie3=true;}
}}}

Bild=new Array();
Bildnummer=0;
Quelle=0
function bildpreload(n,f)
{if (Browser)
{Bild[Bildnummer]=new Array(4);
Bild[Bildnummer][0]=new Image();
Bild[Bildnummer][0].src= f+" .gif";
Bild[Bildnummer][1]=new Image();
Bild[Bildnummer][1].src= f+"_2.gif";
Bild[Bildnummer][2]=new Image();
Bild[Bildnummer][2].src= f+"_3.gif";
Bild[Bildnummer][3]=n;
Bildnummer ++;
}}

function on(aktuell)
{if (Browser)
{for (var i = 0; i <= Bildnummer; i++)
{if (Bild[3]==aktuell)
{document.images[Bild[3]].src=Bild[1].src;
Quelle=i;
i=Bildnummer;
}}}}
function off()
{if (Browser)
{document.images[Bild[Quelle][3]].src = Bild[Quelle][0].src;
}}
function click(aktuell)
{if (Browser)
{for (var i = 0; i <= Bildnummer; i++)
{if (Bild[3]==aktuell)
{if (navigator.appName!="Netscape")
{document.anchors(Bild[3].blur();}
document.images[Bild[3]].src=Bild[2].src;
t=setTimeout('off()', 500;
Quelle=i; i=Bildnummer;
}}}
if (aktuell=='bild1')
{ document.location="http://members.tripod.de/TheDarkLux/Startseite.html";}
if (aktuell=='bild2')
{ document.location="http://members.tripod.de/TheDarkLux/Spiel.html";}

bildpreload ("bild1","menu");
bildpreload ("bild2","html");
bildbreload ("bild3",css");
bildprelaod ("bild4","js");
bildpreload ("bild5","java");

//-->

</script>

</head>

<body>

<table widht="100%" border="0" height="323">

<tr>
<td width="19%" height="37" bgcolor="#000000"> </td>
<td width="81%" height="37" bgcolor="#C0C0C0">
<h1>Men&uuml</h1>
</td>
</tr>

<tr>
<td width="19%" bgcolor="#808080">
<name="bild1" href="JavaScript:click('bild1')"
onmouseover="on('bild1';" onmouseout="off();">
<img src="Leitbild.gif" align="middle" border="2" name="bild1" />
</a><br />
Und so weiter
</td>
<td width="81%" bgcolor="#DADADA">
<p>Willkommen auf dieser Webseite. Wir haben hier verschiedene Themen zusammengestellt, die Sie einfach über die Schalter auf der linken Seite auswählen können</p>
</td>
</tr>
</table>

</body>

</html>
 
Sorry...

hat ein wenig gedauert, aber lieber spät als nie.
Also ich kann Dein Script leider nicht so gut nachvollziehen,
mir fehlen da leider die Kommentare des Autors zu, ist sehr
unübersichtlich geschrieben.
Auf Grund dessen habe ich mal meine Old-Script Sammlungen durchwühlt
und ein Script gefunden, was den gewünschten Effekt bringt.

Ich kann Dir jetzt aber auch nicht sagen ob die Grafiken auch schon
vorgeladen (pregeloadet) werden, meiner Meinung nach JA!

Also viel Spass mit dem Script.

Code:
<html>
<head>
	<title>Untitled</title>
<script language="JavaScript1.1" type="text/javascript">
<!--
if (document.images) {
  n0 = new Image();
  n0.src = 'bild1.jpg';
  h0 = new Image();
  h0.src = 'bild1_over.jpg';
  
  n1 = new Image();
  n1.src = 'bild2.jpg';
  h1 = new Image();
  h1.src = 'bild2_over.jpg';
    
  n2 = new Image();
  n2.src = 'bild3.jpg';
  h2 = new Image();
  h2.src = 'bild3_over.jpg';
  }

function Bildwechsel(Bild,Objekt)
{
  if (document.images)
    document[Bild].src = Objekt.src;
}
</script>
</head>

<body>
<table align="center" width="100" cellspacing="0" cellpadding="0" border=0>
<tr>
    <td height="20">
	<A onmouseup="Bildwechsel('bild1',n0)" onmousedown="Bildwechsel('bild1',h0)" onmouseover ="window.status ='';return true" onfocus  ="this.blur();return true" onmouseout="window.status='';return true" href="[b]LINKZURSEITE.HTML[/b]" >
	<IMG src="[b]Pfad und name des 1. Standardbildes[/b]" border=0 [b]name=bild1[/b]></a><br>
	</td>
</tr><tr>
    <td height="20">
	<A onmouseup="Bildwechsel('bild2',n1)" onmousedown="Bildwechsel('bild2',h1)" onmouseover ="window.status ='';return true" onfocus ="this.blur();return true" onmouseout="window.status='';return true" href="[b]LINKZURSEITE.HTML[/b]" >
	<IMG src="[b]Pfad und name des 2. Standardbildes[/b]" border=0 [b]name=bild2[/b]></a>
	</td>
</tr><tr>
    <td height="20">
	<A onmouseup="Bildwechsel('bild3',n2)" onmousedown="Bildwechsel('bild3',h2)" onmouseover ="window.status ='';return true" onfocus ="this.blur();return true" onmouseout="window.status='';return true" href="[b]LINKZURSEITE.HTML[/b]" >
	<IMG src="[b]Pfad und name des 1. Standardbildes[/b]" border=0 [b]name=bild3[/b]></a>
	</td>
</tr>


</body>
</html>

Anpassen auf Deine Bedürfnisse per Layout etc. musst Du aber schon selber *gg*
Natürlich ist das ein unbegrenztes Script, kannst also immer so weiter schreiben egal wieviel Bilder es sind.

Viel Spass beim Probieren und Proggen!

Gruß Murray
:D
 
Das obige Script ist wirklich sehr umständlich.

Ich habs nicht ausprobiert aber mir war aufgefallen:

bildpreload - Die Angaben wurden in Hochkommas geschrieben.
Meines Wissens nach nur in einfachen Strichen ',

Bei mouseover:
onmouseover="on('bild1')" onmouseout="off()"
So ist es richtig!

Aber Murray hat glaube ich ein einfacheres und gutes Script für Dich.

Bye Steffen
 
Ubs

Sorry, da wo hier das Reply sein sollte ist es nicht, weil ich ausversehen nen neue
tread dafür gestartet hab, sorry, wenn ihr Zeit hättet euch das nochmals anzusehen,
Tread heisst "Da geht was nicht :("
Ich möchte mich also nochmal entschuldigen, für das durcheinander, geh jetzt besser
schlafen *g*
 
Zurück
Oben