Hallo,
ich arbeite gerade an einem Script,
das es ermöglichen soll, dynamisch das ClassName-Attribut
eines beliebigen Tags bei MouseOver zu verändern.
Ich habe mir das Script zusammengeschnippselt und weiß nicht, ob ich auf dem richitgen Weg bin. Ich habe nur rudimentäre JS-Kenntnisse.
Vielleicht kann mir jemand auf die Sprünge helfen:
sfHover = function() {
var all = document.getElementsByTagName('LI');
var allClass = new Array();
var re = "test";
for (var i=0; i<all.length; i++)
if (all[i].getAttribute('class').search(re) !=-1) {
allClass[allClass.length] = all[i];
all[i].onmouseover=function() {
this.className+=" showtime";
}
all[i].onmouseout=function() {
this.className=this.className.replace(new RegExp(" showtime\b"), "");
}
}
}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);
Nochmal zur Erklärung:
Das Script soll alle LI-Tags durchsuchen und bei alleen, bei denen es ein Atribut class="test" gibt, dieses durch class="showtime" ersetzen.
Es geht hier um ein Suckerfish-CSS-Menü, dass im Internet Explorer nur mit JS funktioniert. Durch eine Kombination von verschiedenen Funktionalitäten halte ich diesen Lösungsansatz am praktikabelsten.
Außerdem denke ich, wenn das Script erstmal steht, lässt es sich für
andere Anwendungen leicht adaptieren.
Ich denke da zum Beispiel an ein Script, dass beliebige Objekte zeitgesteuert auf einer Seite einfadet. Dafür wäre der Zugriff auf beliebiege Tags und classNames sehr praktisch.
Schöne Grüße,
Sebastian