Wie kann ich einen schreibgeschützten jQuery-Slider haben? Eine, die einen Wert anzeigen würde, aber der Benutzer darf ihn nicht verschieben?
Danke
Wie kann ich einen schreibgeschützten jQuery-Slider haben? Eine, die einen Wert anzeigen würde, aber der Benutzer darf ihn nicht verschieben?
Danke
Die Dokumentation sagt, es gibt eine .slider('disable')
Funktion – nicht sicher, was das tatsächlich mit dem Slider-Element selbst macht, aber das könnte eine Option für Sie sein.
Dadurch verschwindet der Schieberegler (wird nicht gerendert).
– Name
9. Juni 2009 um 14:26 Uhr
Dann nehme ich an, dass es am einfachsten wäre, ein transparentes Element über dem Schieberegler zu positionieren (und so zu verhindern, dass der Benutzer es manuell bewegt) und seine Position mit dem Attribut .value zu steuern.
– brettkelly
9. Juni 2009 um 14:31 Uhr
Ich verwende jquery-ui-1.9.2 und .slider("disable")
klappt wunderbar. Es verringert die Transparenz und deaktiviert die Ziehbarkeit.
– n-tes Pixel
17. September 2013 um 5:51 Uhr
Gibt es eine Möglichkeit, die Transparenz beizubehalten, aber gleichzeitig die Dragability zu deaktivieren?
– Thomas Sebastian
9. Oktober 2014 um 9:58 Uhr
@ThomasSebastian versuchen hinzuzufügen $(".ui-slider-disabled.ui-state-disabled").removeClass("ui-state-disabled");
nachdem Sie es aufgerufen haben.
– Mowd
26. Februar 2019 um 3:19 Uhr
Ich habe alle vorgeschlagenen ausprobiert. Nur das funktioniert:
$('#mySlider').slider({ disabled: true });
Wenn Sie es deaktivieren, wird es transparent. Wenn Sie möchten, dass es wie ein normaler Schieberegler aussieht, können Sie den Slide-Handler überschreiben, um false zurückzugeben:
$("#mySlider").on("slide", function (event, ui) { return false; });
Dies erledigt die Arbeit.
– Diego Sagrera
17. August 2018 um 18:20 Uhr
Ich habe das gleiche Problem, dass der Schieberegler verschwindet, wenn ich direkt $(‘#mySlider’).slider( ‘disable’ ); verwende. Ich habe den Schieberegler zuerst geladen … und dann deaktiviert. Obwohl es kein guter Weg ist, aber es funktioniert für mich.
$('#mySlider').slider(
{
range: "min",
min: 0,
max: 100,
value: $("span", this).text(),
}
});
$('#mySlider').slider( 'disable');
Das müsstest du einfach machen:
$('#mySlider').slider( 'disable' );
Dadurch verschwindet der Schieberegler (wird nicht gerendert).
– Name
9. Juni 2009 um 14:28 Uhr
Harry
$("#slider").slider("disable")
funktioniert gut, aber erneutes aktivieren funktioniert nicht $("#slider").slider("enable")
Dadurch verschwindet der Schieberegler (wird nicht gerendert).
– Name
9. Juni 2009 um 14:28 Uhr
Ken
Ich hatte heute eine Kundenanfrage dafür. Es ist wahrscheinlich eine gute Idee, dies als bewährte Methode zu tun und die Eingabe von Zeichenfolgen zu verhindern.
Da der Schieberegler den Wert in einem -Tag festlegt, können Sie ihn “schreibgeschützt“.
<p>
<label for="amount">Price range:</label>
<input type="text" id="amount" style="border: 0; color: #f6931f; font-weight: bold;" readonly />
</p>
<div id="slider-range"></div>
Das ist nicht das, was der OP verlangt hat. Er wollte, dass der Schieberegler deaktiviert wird, was Ihr Beispiel nicht zeigt.
– Pierus
3. Februar 2015 um 19:24 Uhr