Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

0 votes

Hallo,

ich würde gerne einen Schieberegler benutzen, der Werte von 0% bis 100% mit 10% Abständen anzeigen soll (also 0%-10%-20% ..)

Ich habe diesen Script benutzt:

<script type="text/javascript">

<!--
formatter = function(value, reversed) {
  if (value < 0) return "";
  return String((Math.floor(value)) * 10) + " %";
}

SoSciSliders.setFormat(formatter, "BS03_01");


// -->
</script>

Die Werte sind allerdings ab 10% gezeigt und nicht ab 0%. Können Sie mir bitte beraten, was ich verändern soll?

Danke und LG

Mariana

in SoSci Survey (dt.) by s083509 (135 points)

1 Answer

+1 vote

Die Codes des Schiebereglers beginnen jeweils bei 1. Wenn Sie vor der Multiplikation mit 10 noch 1 subtrahieren, sollte es funktionieren:

return String((Math.round(value) - 1) * 10) + " %";

Ob Sie Math.floor oder Math.round verwenden, hängt davon ab, in welchen Bereichen die Zahl springen soll. Aber wenn Sie eine Differenzierung <20 eingestellt haben (davon gehe ich aus), rundet der Schieberegeler ohnehin automatisch. Sie könnten also auch schreiben:

return String((value - 1) * 10) + " %";

Tipp: Verwenden Sie das {}-Symbol, um Code als solchen zu formatieren.

by SoSci Survey (89.5k points)
Vielen Dank! :)

Der Schieberegler funktioniert jetzt super, allerdings wenn ich den Fragebogen am Handy anschaue, fliegt der aus dem Bild raus (ist ganz rechts positioniert). Wie könnte ich noch diese Darstellung beheben bitte?

Danke und LG

Mariana
Eventuell müssen Sie im Layout eine Mindestbreite definieren, damit der Schieberegler auf die Seite passt. Dabei wird die Fragebogen-Seite dann entsprechend kleiner dargestellt.

Wie die Mindestbreite definiert wird, hängt vom Layout ab, das Sie verwenden.
...