2016-11-30 4 views
1

In meinem JavaScript-Code habe ich zwei Tasten, die es erlauben, eine Start-Taste zu drücken, dann eine Ende-Taste und es wird die Zeitdifferenz berechnet.Stopp Enddatum vor dem Startdatum?

Wie kann ich hinzufügen, dass die Stopptaste nicht gedrückt werden kann, wenn die Starttaste nicht zuerst gedrückt wurde? Ich bin neu in JavaScript, so etwas verloren hier!

Im Idealfall möchte ich eine Warnung hinzufügen, die besagt, dass wenn das Enddatum vor dem Startdatum liegt oder wenn das Startdatum nicht gedrückt wurde, der Timer vor dem Beenden des Timers gestartet werden muss .

+0

Auch bemerkenswert, es muss JS sein - kein HTML. –

+1

Wo sind die zwei Tasten? In CSS nicht wahr? –

+0

Sie könnten die Tasten in js greifen und bei Bedarf die entsprechenden Tasten deaktivieren/aktivieren. – csmckelvey

Antwort

2

können Sie einige Zustand verwenden Pflege dieser zu nehmen:

var pressedStart = false; 

// starts the timer 
function startTimer() { 
    pressedStart = true; 
    startTime = new Date(); 
    alert(startTime); 
} 


// finishes the timer 
function endTimer() { 
    if(!pressedStart) { 
    return; 
    } 

    endTime = new Date(); 
    pressedStart = false; 
    alert(endTime); 
} 

Dies wird die Funktionalität der Schaltfläche in der JavaScript deaktivieren (es wird keine Warnung zeigen), aber wenn Sie das machen wollen Taste erscheinen (stilistisch) deaktiviert, können Sie auch dies tun:

document.getElementById("idOfMyButton").disabled = true; 
+1

Sheesh, ich habe diesen Weg vergessen! LoL. –

+1

Hey, ja, wenn das OP sagt, dass es kein HTML gibt, wie kommt dann das 'Dokument' ins Spiel? ': P' –

+3

@PraveenKumar lol, nun, es muss HTML sein, wenn es einen Knopf zum Anklicken gibt: P. Ich nehme an, er meinte, er wolle das * Verhalten * der Deaktivierung der Schaltfläche in JavaScript (anstatt das deaktivierende Verhalten als Teil der HTML zu existieren). –

1

Sie können zunächst mit der Taste deaktivieren Attribut deaktivieren und dann in Ihrer Funktion können Sie einfach schreiben wie:

function startTimer() { 
document.getElementById("YourButtonId").disabled = false; 
    startTime = new Date(); 
    alert(startTime); 
} 
+0

Eine andere gute Idee, ich gebe ihnen jetzt beide eine Chance. Vielen Dank! –

Verwandte Themen