2008-12-22 12 views
6

Kann mir jemand JavaScript-Code schicken, wie ich eine Zeitverzögerung aufbauen kann, von dem Zeitpunkt, an dem ich auf eine Schaltfläche klicke, bis zu dem Zeitpunkt, an dem die Funktion aufgerufen wird. Ich bin ein Anfänger mit JavaScript, und ich habe Code, der eine Funktion ausführt, wenn ich auf eine Schaltfläche klicke, und ich möchte nur eine Zeitverzögerung haben.Zeitverzögerung beim Klicken

Antwort

7

Dies ist Javascript:

function myfunction() { 
    alert("delayed"); 
} 

var delay = 1000; 

setTimeout(myfunction, delay) 

, dass das Wesen ist. Jetzt müssen Sie es in eine Schaltfläche auf einer HTML-Seite einhaken: Betten Sie die Funktionsdefinition in <script> ... </script> Tags ein, und planen Sie sie in der onClick-Methode ein.

.... 
<button onClick="setTimeout(myfunction, delay);">Click_And_Wait</button> 
1

Versuchen die SetTimeout Funktion:

setTimeout(functionToExecute, 1000) 

Der erste Parameter ist die Funktion, die ausgelöst wird, und die zweite ist die Verzögerung in Millisekunden.

4

Wenn Sie Parameter zu übergeben:

function clickHandler(id,value,delay) 
{ 
    setTimeout(function() { actualFunction(id, value); }, delay); 
} 

function actualFunction(id, value) 
{ 
    alert('button ' + id + ' has value = ' + value); 
} 


<input id='clickButton' type='button' 
     onclick='clickHandler(this.id,this.value,5000);' 
     value='Click Me' /> 
0

Ich würde vorschlagen, in Prototype.js suchen Vor allem, wenn Sie neue Entwickler für JavaScript sind. Prototype hat bereits viele der häufigsten Anforderungen, die JavaScript-Entwickler in ihrem Code ausführen möchten, herausgefunden. Prototype tut dies in einer Browser-unabhängigen Weise. (Es gibt andere JavaScript-Bibliotheken, die das auch können)

Sie können es tun, wie in den anderen Antworten codiert .. aber ich habe festgestellt, dass ich in der Regel weniger Aufwand in der Sorge über Fehler in meinem Code nach I verbringen investierte in ein gutes Buch und verbrachte 2 Tage damit, über Prototype (oder eine andere Bibliothek wie jQuery) zu lesen, anstatt im Internet zu suchen und verschiedene Lösungsstücke zu kopieren/einfügen./Achselzucken

Verwandte Themen