JavaScript Verzögerten Funktions Aufruf

I N X S

Captain
Registriert
Jan. 2007
Beiträge
3.448
Hallo,

bei einer Textfeld eingabe rufe ich eine Funktion auf bei jedem Tastendruck. Ich möchte aber dass Javascript diesen Funktionsaufruf verhindert und zwar so, dass diese Funktion erst nach einer Sekunde ohne Tastendruck erfolgt.

Vielleicht eine Lösung mit Timeout und unterbrechen wenn was neues kommt?

Bin aber offen für alles.


Grüße
Jonny
 
Hi!

Versuch's mal hiermit...

Code:
var timer = false;
function StartCheck(){
	timer = setTimeout("LiveSearchGo()", 1000);
}

function StopCheck(){ 
	if(timer) { 
		clearTimeout(timer);
	}
}

function LiveSearch(obj){
	if(obj.value.length > 2){
		StopCheck(); 
		StartCheck();
	}
}

function LiveSearchGo(){
	// tu was sinnvolles
}

EDIT:
und dann natürlich im <input> Feld noch ein

Code:
onkeyup="LiveSearch(this)"
 
Da du dich anscheinend gut mit Javascript auskennst :D

Ich bin gerade dabei eine Funktion zu schreiben, die mir eine Textbox dynamisch horizontal erweitert, je nachdem wie voll sie ist. Anfangend bei 200px.

Hast du da eine Idee?
 
Zurück
Oben