1. FC Keller hat geschrieben:Vor deinem return 1 hast du ein break.. d.h. es kommt gar nicht zum return weil die Schleife vorher abgebrochen wird.
Theoretisch solltest du dieses login-Tag auch per DOM finden und damit auf das innerHTML und das match verzichten können...
Stimmt, in der Funktion war das break völlig sinnfrei, hab ja auch ein return drinnen, das die Funktion ja sowieso abbricht, wenn es verwendet wird.
.
1. FC Keller hat geschrieben:Die Funktion dürfte außerdem Fehlermeldungen bringen wenn weniger als 5 Zeilen im Chatstream stehen... dagegen habe ich noch eine Abfrage eingebaut.
Ja, das wusste ich, aber danke für den Hinweis.
Hatte es nur noch nicht eingebaut, weil ich erstmal den Login erfolgreich suchen wollte.
1. FC Keller hat geschrieben:wozu eigentlich die countFails-Variable? da sie lokal per var deklariert wird ist sie außerhalb der Funktion sowieso nicht abfragbar und zurückgegeben wird sie auch nicht per return... ich war mal so frei und habe sie entfernt weil ich keinen Sinn erkennen konnte.
Oh, achso. Sie war eigentlich dafür da, die fehlgeschlagenen Suchvorgänge zu zählen. Und wenn es immer fehlgeschlägt, dass dann die Funktion 0 ausgibt.
Ich wusste nicht, dass als erstes die Schleife ganz durchläuft, bevor es in der Funktion weitergeht. Weil ich hatte gedacht, dass sowas wie in deiner Variante jetzt, immer 0 ausgibt. Aber super so, jetzt habe ich was dazugelernt. Danke!
1. FC Keller hat geschrieben:vielleicht hilft das weiter:
Code: Alles auswählen
function searchLoginLS() {
var trs = document.getElementsByTagName('tr');
for (i=1; i<=5; i++) {
if (trs.length>=i && trs[trs.length-i] && trs[trs.length-i].getElementsByTagName("login").length){
return 1;
}
}
return 0;
}
Werde ich mal ausprobieren, super, danke!
1. FC Keller hat geschrieben:Ich weiß nicht was du damit vor hast... ich nehme mal an, du willst mit einem Intervall regelmäßig prüfen ob sich jemand neu eingeloggt hat... da wäre theoretisch auch noch eine Alternative, die Loginsound-Funktion zu überschreiben, denn die wird beim Login automatisch ausgeführt und man könnte sich den intervall sparen.
Das könnte z.B. so aussehen:
Code: Alles auswählen
LoginSound_alt=LoginSound;
LoginSound=function(){
alert("es hat sich jemand eingeloggt :)");
LoginSound_alt();
}
Hmm. Gute Idee, die LoginSound-Funktion könnte ich überschreiben, dann wäre das Script sogar einfacher, als ich gedacht habe!
Meine Intention an dem ganzen ist, dass ich gerade das Script
"Einmarsch"-Musik fast fertig geschrieben habe und das auf Basis eines Chatbefehls (Das mit dem Login überprüfen wäre gegen die Ausnutzung gewesen) + JS-Datei gemacht hätte.
Aber jetzt überschreibe ich einfach die LoginSound-Funktion.
Naja, ich lern immer mehr dazu, danke!
