2016-04-27 12 views
0

Ich versuche, das Slider-Ereignis zu starten, wenn der letzte Wert ausgewählt wurde. Die Idee ist, so etwas wie Kombinationsschloss zu schaffen. Ich habe diese Lösung:jquery mobile Verzögerung Schieberegler Ereignis

<div data-role="page"> 
<label for="slider1">first</label> 
<input data-type="range" name="slider1" id="slider1" value="10" min="0" max="20" /> 
<br> 
<label for="slider2">second</label> 
<input type="range" name="slider2" id="slider2" value="10" min="0" max="20" /> 
<br> 
<label for="slider3">third</label> 
<input type="range" name="slider3" id="slider3" value="10" min="0" max="20" /> 
</div> 

var seconds = 3, 
timer; 
$("#slider1, #slider2, #slider3").on("slidestop", function(e) { 
var slider1_value = $('#slider1').val(); 
var slider2_value = $('#slider2').val(); 
var slider3_value = $('#slider3').val(); 
var update = function() { 
if (slider1_value == 15 && slider2_value == 2 && slider3_value == 2) { 
    alert("Great!!!"); 

} else { 
    alert("Try it again!!!"); 
    } 
} 
if (timer) clearTimeout(timer); 
timer = setTimeout(update, seconds * 1000); 

}); 

Vielleicht gibt es eine bessere Lösung, da der Benutzer für 3 Sekunden warten, bevor etwas passiert?

Here is my fiddle

Antwort

0

Wie wäre es mit diesem?

$("#slider1, #slider2, #slider3").on("slidestop", function(e) { 
    var slider1_value = $('#slider1').val(); 
    var slider2_value = $('#slider2').val(); 
    var slider3_value = $('#slider3').val(); 
    if (slider1_value == 15 && slider2_value == 2 && slider3_value == 2) { 
    alert("Great!!!"); 
    } 
}); 

EDIT

Ich habe Ihnen eine Geige als auch gemacht: https://jsfiddle.net/EliteSystemer/7hpbanq9/ für die Änderung ist

Mein Grund, dass ich nicht ein Fehler jedes Mal meine Kombination ist gegossen haben wollen würde falsch aber nur wenn es richtig ist.

Der obige Code bietet automatische Überprüfung jedes Mal, wenn einer der Schieberegler geändert wird. Ein anderer Ansatz besteht darin, eine Schaltfläche zur manuellen Überprüfung hinzuzufügen. Bitte lassen Sie mich wissen, wenn Sie das wollen, und ich werde dafür ein Beispiel geben.

Verwandte Themen