Hallo,
ich habe eine kleines Script bzw. ein Funktion geschrieben, die ein HTML-Dokument nach dem laden ändern soll.
Warum ist das mache? Es ist quasi ein Facelifting des Layouts das nicht gefällt und wo ich auf bestimmte Teile des HTML keine Zugriff habe und mit CSS keinen Zugang habe, da diese Teile von einer anderen Quelle eingefügt werden. D.h. ich habe eine HTML-Datei wo es Platzhalter gibt, die von Server mit HTML-Inhalt gefüllt werden. Das ist ist dem Blog-System, wo ich meine Blogs führe nunmal so und kann derzeit nicht geändert werden.
Ich hoffe das ihr mir bis hierhin folgen konntet.
Nun das eigentliche Problem - Ich habe folgenden Code:
function modify_sidebarComments() {
//Ändere 'Letzte Kommentare' in der Sidebar
var a=document.getElementById('module-lastcomments');
var b=a.getElementsByTagName('ul');
//b[0].style.border='1px dashed yellow';
var c=b[0].getElementsByTagName('li');
for (var i = 0; i < c.length; i++) {
if (i<=c.length-2) {
//c[i].style.border='1px solid green';
document.getElementById('test2').innerHTML=i+'/'+c.length;
if (isIE4bis7()) {
//Für IE4-7
var d=c[i].childNodes[4];
} else {
//Für den Rest der Browserwelt
var d=c[i].lastChild;
}
//d.style.border='1px solid red';
d.style.display='block';
d.style.marginTop='-6px';
d.style.borderBottom='1px solid #d08020';
d.style.paddingBottom='2px';
} else {
c[i].className='LastListItem';
}
}
}
function isIE4bis7() {
if (window.ActiveXObject) {
return true;
} else {
return false;
}
}
Von Firefox2, Opera9 und Safari3(für Windows) wird das Script richtig und vollständig abgearbeitet. Derzeit muss die FOR-Schleife zehnmal durchlaufen werden.
Der IE7 bricht das Script allerdings bereits nach dem zweiten Durchlauf der Schleife ab und zwar bei d.style.display='block';
Ich weiss nun keinen Rat mehr.
Hat jemand ne Idee, was ich da wohl falsch mache?
Normalerweise sind alle Blog-Bereiche am Anfang auf visibility:hidden; gestellt, damit durch die Layoutänderungen kein "zucken und rucken" im Browser zusehen ist und erst wenn die Änderungen an einem Blogteil gemacht sind, wird dieser wieder sichtbar. Da die Sidebar (der Teil den ich gerade in der Mache habe) bei Scriptfehlern aber da ganz unsichtbar bleibt, habe ich diese im Moment auf sichtbar gestellt, so das ich die Ergebniss zwischen IE und dem Rest vergleichen kann.
Schon mal danke im voraus für jeden Hinweis.