Super, freut mich, dass das funktioniert! Da ist aber noch etwas unsauber, wahrscheinlich wird jetzt ein Eventlistener auch für das Window-Objekt registriert und das könnte unerwünschte Nebeneffekte haben. Moment, ich untersuche das ...
Code Erweiterung
-
-
Ja, wie ich vermutet hatte, jetzt werden die Tabellen auch gefärbt, wenn man irgend wo im Fenster klickt.
Versuche dies:
Code
Alles anzeigen<script type="text/javascript"> window.addEventListener('load', function () { changeColors(); var nextButton = document.querySelectorAll('.dataTables_wrapper.no-footer .paginate_button.next'); for (var j = 0; j < nextButton.length; j++) { nextButton[j].addEventListener('click', changeColors); } }); function changeColors() { var tds = document.querySelectorAll('body.player-template-default.single.single-player table.dataTable.visualizer-data-table tbody > tr > td'); for (var i = 0; i < tds.length; i++) { if (tds[i].innerText === 'W') tds[i].parentElement.style.backgroundColor = '#9ed7b6'; else if (tds[i].innerText === 'L') tds[i].parentElement.style.backgroundColor = '#f4a6a6'; else if (tds[i].innerText === 'D') tds[i].parentElement.style.backgroundColor = '#f4dda6'; else if (tds[i].innerText === 'Total') { tds[i].parentElement.style.fontWeight = 'bold'; tds[i].parentElement.style.backgroundColor = '#AFDBF1'; } } // die folgende Anweisung deaktivieren: // nextButton = document.querySelector('.dataTables_wrapper.no-footer .paginate_button.next'); // die folgende Anweisung hinzu fuegen: if (this != Window) this.addEventListener('click', changeColors); } </script>
-
Du meinst eine Zeile in "violett"?
-
Das komplette Einfärben der Zellen passiert jetzt auch, wenn man irgend wo auf der Seite klickt. Wahrscheinlich sieht man es gar nicht, weil ja genau so eingefärbt wird, wie es schon war, aber ist unsauber.
-
Hab den Code geändert. Bei mir sehe ich allerdings kein Unterschied
-
Das war auch noch falsch window muss klein geschrieben werden:
if (this != window) this.addEventListener('click', changeColors);
-
erledigt
-
So, jetzt passt es. Man erkennt es nur im Debugger. Hätte doch in Zukunft vielleicht unerwünschte Nebeneffekte haben können.
-
Vielen Dank!
Jetzt hoffe ich, dass die Jungs mir vom Support noch eine Frage beantworten können, dann bin ich der glücklichste Mensch der Welt.
Du hast mir sehr viel geholfen. Lieben Dank
-
Gern geschehen, immer erfreulich, wenn am Schluss etwas funktioniert. Und ich habe etwas Neues über das window-Objekt gelernt.
-
ohhh, klappt doch etwas nicht mehr
-
Wie ich sehe, das selbe Problem wie am Anfang. Verstehe ich nicht, zwischendurch hat es doch funktioniert.
-
Ja, seit der letzten Code Änderung, wo du etwas angepasst hast.
-
Dann müssen wir das wieder heraus nehmen. Die letzte Anweisung also wieder so:
this.addEventListener('click', changeColors);
d. h. ohne vorher das window abzufragen. Das ist aber jetzt ziemlich unsauber, weil die Tabellen einfach eingefärbt werden, wenn man irgend wo auf der Seite klickt. Muss ich noch Mal drüber nachdenken.
-
if (this != window) this.addEventListener('click', changeColors);
Das weg?
-
Nicht die ganze Zeile, sondern nur das if, also statt
if (this != window) this.addEventListener('click', changeColors);
so
this.addEventListener('click', changeColors);
-
Wieder hergestellt.
Läuft wieder
-
Wie gesagt, ziemlich unschön jetzt. Aber ich vermute, Du bist zufrieden, wenn es so läuft. Ich habe auch schon eine Lösung, wie man es richtig machen kann, musst Du entscheiden, ob wir der Sache noch nachgehen sollen. Aber heute nicht mehr, ist schon spät.
-
Also wenn du möchtest gerne, nicht dass es später Probleme gibt.
Ich hau mich auch aufs Ohr. Ist sehr viel Arbeit die Seite.
Vielen Dank schon mal
-
Gern geschehen, gute Nacht!
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!