Autor |
Nachricht |
qualidat
Threadersteller
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Mo 10.12.2012 15:20
Titel
|
|
|
Ich mache zwar seit vielen Jahren Anwendungsentwicklung für Mac und PC ... aber die Feinheiten von JS sind mir rel. neu. Ich habe jetzt auch nicht die Absicht, irgend ein tolles Design zu realisieren, es geht um eine rein technisch-funktionale Intranet-Seite zur Ausgabe von Werten eines Temperaturlogger-Systems, wo man den einzelnen Sensoren und Kurven Farben zuordnen kann. Zu den Fragen:
- die Werte der Tabellenzellen setze ich in einer Schleife mit "style=background-color:#rrggbb;"
Ich habe jetzt in der selben Schleife auch gleich eine id mit der selben Codierung gesetzt, das funktioniert, ich muss fertig werden ... gebe die dann mit onclick="creturn(this.id);" zurück ... die Liste ist maximal 20 ... 30 Zeilen lang.
Zuletzt bearbeitet von qualidat am Mo 10.12.2012 15:22, insgesamt 1-mal bearbeitet
|
|
|
|
|
fyll
Dabei seit: 20.09.2003
Ort: Augsburg
Alter: 39
Geschlecht:
|
Verfasst Mo 10.12.2012 15:31
Titel
|
|
|
Naja - wie gesagt, du müsstest das dann so umsetzen:
ret=document.defaultView.getComputedStyle(c,null).getPropertyValue("background-color");
Wäre das aber kein intranet-projekt, würdest damit aber vor allem wegen alt-browsern an die Grenzen stoßen, weil die das nicht verstehen - manche hätten damals dann u.a. dein "style.backgroundColor" erwartet .. was also wieder Browserweichen etc bedeutet hätte
Das alles wird einem dann von einem JS-Framework wie jQuery abgenommen. Gerade bei solchen Dingen und in Sachen dom-manipulation kann man das empfehlen; da wäre dann die komplette Geschichte (inklusive listener-setzen) mit 2 Zeilen erledigt.
Immer und in allen Fällen ist das aber natürlich auch nicht empfehlenswert - wie es bei jedem Framework so ist.
|
|
|
|
|
Anzeige
|
|
|
qualidat
Threadersteller
Dabei seit: 14.09.2006
Ort: Eichwalde bei Berlin
Alter: 63
Geschlecht:
|
Verfasst Mo 10.12.2012 15:37
Titel
|
|
|
Ok, danke für die Tips, werde jQuery mal auf meine Agenda setzen. Hatte - ausser dass ich mich z.Zt. damit nicht auskenne - nur Bedenken, mich in zusätzliche Abhängigkeiten und permanenter Update-Pflicht zu begeben ...
|
|
|
|
|
fyll
Dabei seit: 20.09.2003
Ort: Augsburg
Alter: 39
Geschlecht:
|
Verfasst Mo 10.12.2012 15:46
Titel
|
|
|
qualidat hat geschrieben: | ... Hatte nur Bedenken, mich in zusätzliche Abhängigkeiten und permanenter Update-Pflicht zu begeben ... | Das mit der Update-Pflicht versteh ich nicht.
Du kannst jQuery so einbinden:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
und hast damit immer die aktuellste 1er (also inklusive Alt-IE-Support)-Version, kannst aber doch genauso gut eine runterladen und die einbinden, ohne gezwungen zu sein, auf die neusten Versionen umzusteigen...
|
|
|
|
|
Karlarsch
Dabei seit: 05.02.2007
Ort: -
Alter: 58
Geschlecht:
|
Verfasst Mo 10.12.2012 21:18
Titel
|
|
|
jQuery erleichtert das Handling von JavaScript wirklich ungemein. Eines der wenigen Produkte wo ich den Slogan "Wrtie less, do more" sehr passend finde ... und wenn ich mir deine Beiträge so anschaue auch genau das richtige Werkzeug für dich.
Btw. eine ID darf nur einmal pro Seite vorkommen.
Statt inline-style zu setzen, setz doch eine Klasse, dann hast du auch gleich einen selektor auf den du bei bedarf zurückgreifen kannst.
Außerdem solltest du dir mal "unobstrusive javascript" anschauen, dass ist der moderne Weg des Event-Handling.
Gruß
Karl
|
|
|
|
|
|
|
|
Ähnliche Themen |
onclick-Event bei onclick dieses Elements ändern
wie per JS timestamp auslesen und dann farbe ändern?
HTML Zelle teilen
Stylesheet für die Füllung einer Zelle
vertikal wiederholender Background in Zelle
Texteinzug um 10px in einer Zelle. Wie?
|
|