Ich habe einen Schieberegler, der als Zeitleiste in meinem Musikplayer verwendet wird. Der minimale Wert ist 0 und der maximale Wert ist die Songlänge (in Sekunden). Jede Sekunde (ich mache das mit einem Timer) bewegt sich der Schieberegler und der Wert wird auf die aktuelle Zeit gesetzt. Diese Codezeile sieht so aus:
%Vor%Der Benutzer kann den Schieberegler verschieben und auf einen anderen Punkt im Song springen, indem er die Funktion 'play (startPlayFromHere)' auslöst. Es sieht so aus:
%Vor%Das Problem ist, dass sowohl die Codezeile im Timer als auch der Benutzer das selbe "change" -Ereignis des Sliders aufrufen, und der Benutzer kann den Slider nicht bewegen.
Meine Frage lautet also: Wie kann ich feststellen, ob der Benutzer das Änderungsereignis aufgerufen hat oder nicht (dh, es war der Zeitgeber)?
Ich hoffe, es ist klar genug, Danke!
Sie können feststellen, ob ein Änderungsereignis manuell oder programmgesteuert aufgetreten ist, indem Sie event.originalEvent
im Änderungshandler testen.
Siehe Geige .
Tags und Links jquery jquery-ui-slider