Wert aus Tabelle auslesen und änderung vornehmen (Greasemonkey)

Weedhat

Grünschnabel
Hi
ich wollte mal fragen ob mir hier evtl jemand helfen kann...Ich habe bei einem Spiel eine Karte mit einzelnen Häusern. Die Häuser werden im Quelltext mit verschiedenen Werten in einer Tabelle dargestellt...
z.b. so
Code:
<table id="map" border="0" cellpadding="0" cellspacing="0" width="400">
  <tbody><tr height="40">
    <td class="c204" onmouseover="mi(204,54001,18.97,21,6,'','',0,0,'')" onclick="mgo(54001)" background="http://.../img/map/house_8.gif" height="40">&nbsp;</td>

    <td class="c229" onmouseover="mi(229,54002,18.03,26,15,'','',0,0,'')" onclick="mgo(54002)" background="http://.../img/map/house_4.gif">&nbsp;</td>
......
</tr>
</tbody></table>
Ich hab jetzt mal der Übersicht halber nur den <td> Inhalt für 2 Häuser angegeben...
Die Class-werte sind bei jedem haus anders.

Das erste Haus auf dieser Karte hat dann quasi die Hausnummer 54001 und einen wert von 6.
Das zweite Haus hat die Hausnummer 54002 und einen Wert von 15. Die anderen Werte verändern sich auch immer, sind aber für das was ich machen möchte unerheblich.

Ich würde gerne bei Häusern die einen wert >=15 haben anderen hintergrundgrafiken anzeigen lassen, am besten verschiedene bei verschiedenen Werten (also wert 15=bild1,
wert 16= bild2 usw).
Ist das so in der Form überhaupt möglich oder funktioniert das garnicht?
 
Natürlich geht das, dafür wurde greasemonkey entwickelt! Was hast du denn bisher versucht?
Javascript:
var tds = document.getElementsByTagName("td");

	for(var i=0;i<tds.length;i++) {
		if(tds[i].wrappedJSObject.onmouseover.toString().split(',')[4] >= 15)
			tds[i].wrappedJSObject.style.backgroundColor = "red";
 
Auch wenn es jetzt ziemlich blöd klingt aber nichts konkretes :(

Ich habe erst vor 1-2 tagen angefangen mich damit zu beschäftigen und habe jetzt erstmal anhand von tutorials und so gelernt wie html und javascript aufgebaut ist...

Das habe ich denke ich auch soweit (in Grundzügen) verstanden und in Html schaffe ich es jetzt auch schon eine seite mit Grafiken, Tabellen und so weiter zu erstellen.

Aber bei Javascript tue ich mir irgentwie total schwer da es einfach soviele Befehle gibt und ich keinen ansatzpunkt gefunden habe wie ich so etwas lösen kann....
Ich hab mir zwar auch für javascript viele Tutorials angeschaut aber nicht so ganz verstanden wie ich das auf diese Problem anwenden kann :D


Vielen Dank aber auf jedenfall schonmal für die antwort und jetzt werde ich mich dann mal in Ruhe hinsetzen und versuchen zu verstehen wie der Code von dir aufgebaut ist bzw was er genau wie bewirkt *g*
 
Wenn du dich wirklich damit beschäftigst und Schritt für Schritt durch gehst, wirst du es verstehen. Und dass er funktioniert, hab ich vorher getestet.
Eventuell wirst du etwas Probleme haben, weil ich mehrere Sachen in eine Zeile geschrieben haben, aber geh einfach Befehl für Befehl durch.
 
Hmm ich bekomme es einfach nicht zum laufen.... :(

Keine Ahnung ob ich etwas falsch mache oder woran es liegt. Ich habe den Code von dir in eine datei kopiert und als code.user.js gespeischert. Diese Datei habe ich dann in Greasemonkey geladen und es so eingestellt das er sie auf die entsprechende Seite anwendet aber leider ändert sich dadurch garnichts....

Hab ich da etwa falsch gemacht oder etwas vergessen?

Die befehle habe ich denke ich jetzt soweit verstanden auch wenn mir 1-2 feinheiten noch unklar sind ;)

Edit:
Ok am ende hat wohl noch eine klammer gefahlt die ist inzwischen da wo sie hingehört...

Nun bekomme ich folgende Fehlermeldung:
Code:
tds[i].wrappedJSObject.onmouseover is undefined....

mit verweis auf zeile 4


Edit2:
Ich habe es zwischenzeitlich über eine andere Lösung hinbekommen. Irgentwie hatte das mit dem WrappedObject bei mir nicht funktioniert.

Trotzdem vielen Dank für die hilfe :D
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück