Hallo Forum!
JavaScript treibt mich noch in den Wahnsinn!!!
Ich will per mouseOver eine Graphik auswechseln und gleichzeitig die Farbe und Hintergrundfarbe des "Schalter" ändern.
Dazu habe ich folgende Funktionen geschrieben, die per <script type="text/javascript" src="./chart.js"></script> eingebunden werden (sorry für den langen Code):
var elemin = 0;
var graph = 'http://www.example.com/chart?INST_ID=0001323&datum=1&hist=0&size=2&sym=';
var t1 = 0;
var t2 = 0;
var t3 = 0;
var t4 = 0;
function wechsel(c){
if ((typeof(document.getElementById)=="function") || (typeof(document.getElementById)=="object")){
var cur = document.getElementById("curindex");
t1 = document.getElementById("dax");
t2 = document.getElementById("tecdax");
t3 = document.getElementById("dowjones");
t4 = document.getElementById("nasdaq");
}
else if (document.all){
var cur = document.all.curindex;
t1 = document.all.dax;
t2 = document.all.tecdax;
t3 = document.all.dowjones;
t4 = document.all.nasdaq;
}
switch (c){
case 0:
cur.src = './images/chart2.php?id=DAX';
cur.title = 'Chart DAX30 (Intraday)';
t1.style.color="#000000";
t1.style.backgroundColor="#CCCCCC";
break;
case 1:
cur.src = '.images//chart2.php?id=TDX';
cur.title = 'Chart TecDAX (Intraday)';
t2.style.color="#000000";
t2.style.backgroundColor="#CCCCCC";
break;
case 2:
cur.src = graph+'INDU.IND';
cur.title = 'Chart Dow Jones (Intraday)';
t3.style.color="#000000";
t3.style.backgroundColor="#CCCCCC";
break;
case 3:
cur.src = graph+'NDX.X.IND';
cur.title = 'Chart Nasdaq (Intraday)';
t4.style.color="#000000";
t4.style.backgroundColor="#CCCCCC";
break;
}
if (c != elemin){
makeout(elemin);
elemin = c;
}
}
function makeout(c){
switch (c) {
case 0:
t1.style.color="#FF0000";
t1.style.backgroundColor="#FFFFFF";
break;
case 1:
t2.style.color="#FF0000";
t2.style.backgroundColor="#FFFFFF";
break;
case 2:
t3.style.color="#FF0000";
t3.style.backgroundColor="#FFFFFF";
break;
case 3:
t4.style.color="#FF0000";
t4.style.backgroundColor="#FFFFFF";
break;
}
}
Dieser wird folgendermaßen aufgerufen:
<img alt="Chart" src="./images/chart2.php?id=DAX" id="curindex" width="175" height="100" border="0">
<a onmouseover="wechsel(0);" class="chart" id="dax">DAX</a>
<a onmouseover="wechsel(1);" class="chart" id="tecdax">TecDAX</a>
<a onmouseover="wechsel(2);" class="chart" id="dowjones">Dow Jones</a>
<a onmouseover="wechsel(3);" class="chart" id="nasdaq">Nasdaq</a>
Wenn das Dokument geladen ist, funktioniert es eine Zeit lang meistens ohne Probleme. Allerdings kommt nach ca. 30 Sekunden dann immer im Mozilla die Fehlermeldung "wechsel is not a function". Im IE sagt er nur: "Das Objekt unterstützt diese Eigenschaft oder Methode nicht." Warum? Ich bin mir sicher, dass in obigem Code keine Fehler enthalten sind. Die IDs wurden auch alle nur einmal vergeben.
Wäre schön, wenn mir jemand helfen könnte.
Gruß
mdkiller
P.S.: Der Fehler tritt im Mozilla Firebird dann nicht auf, wenn die Seite refreshe. Erst, wenn die JavaScript-Konsole geöffnet wird, die dann gleich mit der Fehlermeldung vollgehauen wird...
ss:| zu:) ls:# fo:| de:> va:| ch:? n4:° rl:( br:> js:| ie:% fl:| mo:?
http://www.peter.in-berlin.de/projekte/selfcode/?code=ss%3A|+zu%3A)+ls%3A%23+fo%3A|+de%3A>+va%3A|+ch%3A%3F+n4%3A�+rl%3A(+br%3A>+js%3A|+ie%3A%25+fl%3A|+mo%3A%3F