Rolf B: Slider to JS variable

Beitrag lesen

Hallo Alois,

du verstehst scheinbar das Konzept der Events noch nicht.

Das Script, so wie Du es jetzt hast, tut dies:

Zeilen 1 - 3: Deklaration von drei "Konstanten" - also letztlich Variablen, deren Wert Du nachher nicht mehr ändern kannst. Dieses "const" bezieht sich aber nur auf den Wert der Variablen selbst. Die "Werte" in diesen Variablen sind Objekte (strOut ist ein Array und die slider...-Variablen sind Verweise auf DOM Elemente), und diese Objekte werden durch das "const" nicht vor Veränderungen geschützt.

strOut ist jetzt ein leeres Array, d.h. strOut[0] ergibt den Wert undefined.

Zeilen 5-9: Registrieren einer Funktion als EventListener für das input Event auf dem Slider. Hier passiert nichts außer dem Hinterlegen dieser Funktion als EventListener. Sie wird noch nicht ausgeführt.

Zeile 11: Auslesen von sliderFp.value, Speichern im textContent von sliderOut

strOut ist immer noch ein leeres Array

Zeile 12: Speichern von strOut[0] im innerHTML von #test2.

Was schrieb ich vorhin? innerHTML ist hier falsch. Es muss textContent sein. Du speicherst Text. Kein HTML.

NUN endet dein Script erstmal, und JETZT erst fängt der Browser an, die Seite darzustellen.

Sobald Du mit der Maus am Slider herumspielst, fängt er an, Events zu feuern. Jetzt wird die hinterlegte Funktion aufgerufen und speichert einen Wert in strOut[0]. Das hat aber für die Zeile 12 keine Bedeutung. Diese wird nicht mehr ausgeführt.

Ich brauche aber den Wert außerhalb um mit ihm einen String zu konstruieren, den ich an meinen kleinen Web-Server schicken will.

Die entscheidende Frage ist nun: Was soll diesen Abschickvorgang auslösen? Durch einen Timer? Einen Button? Soll der Wert automatisch nach dem Verändern des Sliders hochgeschickt werden?

Rolf

--
sumpsi - posui - obstruxi