Heim > Web-Frontend > js-Tutorial > Hauptteil

So schließen Sie eine Seite mit Javascript automatisch zu einem geplanten Zeitpunkt

醉折花枝作酒筹
Freigeben: 2021-06-15 14:17:27
Original
4827 Leute haben es durchsucht

Methode: 1. Verwenden Sie die setTimeout-Methode. Die Syntax lautet „setTimeout (der auszuführende Code, die Anzahl der zu wartenden Millisekunden)“. 2. Verwenden Sie die setInterval-Methode. Die Syntax lautet „setInterval (die aufzurufende Funktion). , das Zeitintervall zwischen aufrufenden Funktionen)" .

So schließen Sie eine Seite mit Javascript automatisch zu einem geplanten Zeitpunkt

Die Betriebsumgebung dieses Tutorials: Windows 7-System, JavaScript-Version 1.8.5, Dell G3-Computer.

Kein Unsinn mehr, lass mich einfach den Code für dich posten.

//js 定时关闭窗口(ie和FF中测试过)
//6秒后自动关闭当前窗口
setTimeout("window.opener=null;window.close()",6000);
Nach dem Login kopieren

Das Folgende ist eine Einführung in die Verwendung von Javascript-Timern

Verwenden von Timern zur Implementierung einer verzögerten oder wiederholten Ausführung von JavaScript. Das Fensterobjekt bietet zwei Methoden, um den Effekt des Timers zu erzielen, nämlich

window.setTimeout() und window.setInterval. Ersteres kann dazu führen, dass ein Codeabschnitt nach einer bestimmten Zeit ausgeführt wird, während Letzterer dazu führen kann, dass ein Codeabschnitt zu jedem angegebenen Zeitpunkt einmal ausgeführt wird. Ihre Prototypen lauten wie folgt: window.setTimeout(expression,milliseconds); window.setInterval(expression,milliseconds); wobei expression ein String oder ein Funktionsname sein kann. Wenn es sich um eine Zeichenfolge handelt, können Sie Parameter annehmen, aber der Funktionsname kann keine Parameter annehmen. Wenn Sie Parameter annehmen, wird die Funktion ohne Verzögerung direkt ausgeführt.

function hello (){ 
console.log('I am dada'); //alert('I am ' + name);
//setTimeout(arguments.callee,2000); 
} setTimeout(hello,5000);//5秒后执行 setTimeout('hello()',3000);//3秒后执行
setTimeout(hello(),8000);//立刻执行
Nach dem Login kopieren

Der erste Fall ist ein Funktionsname, der aber keine Parameter annehmen kann

Der zweite Fall ist ein String, ausführbarer JS-Code, der Parameter annehmen kann, aber die Leistung ist schlechter als der Funktionsname

Der dritte Fall ist Rufen Sie eine Funktion auf und führen Sie sie direkt aus. Wenn Sie also Parameter übergeben, sie aber nicht in Form einer Zeichenfolge aufrufen möchten, können Sie selbst eine Methode schreiben:

function _hello(_name){ 
return function(){ 
hello2(_name); 
} 
} 
setTimeout(_hello(name),7000);//立刻执行
Nach dem Login kopieren

1 setTimeout

setTimeout(function(){
//要执行的代码 
},200);
Nach dem Login kopieren

bedeutet das danach 200 ms, der Timer-Code wird zur Warteschlange hinzugefügt. Warten Sie, bis der JavaScript-Prozess inaktiv ist, bevor der Code ausgeführt wird 2. Bei Verwendung von setInterval, nur wenn (in der Warteschlange (in), wird der Timer-Code nur dann zur Warteschlange hinzugefügt, wenn keine anderen Codeinstanzen des Timers vorhanden sind, unter Berufung auf die Anweisung in JavaScript Advanced Programming, Second Edition (das heißt: Wenn der aktuelle Timer-Code ausgeführt wird, lautet der folgende Timer-Code: Ein Timer-Code wird zur Warteschlange hinzugefügt und wartet auf die Ausführung. Nachfolgende Timer-Codes werden nicht zur Warteschlange hinzugefügt.)


Bei der Verwendung von setInterval tritt ein Problem auf um wiederholte Aktionen auszuführen:

Beim Timing Wenn die Ausführungszeit des Timer-Codes (wenn die Ausführung 600 ms dauert) das angegebene Intervall überschreitet (hier 200 ms), werden einige Timer-Codes übersprungen (d. h. nachfolgende Timer-Codes). wird nicht zur Warteschlange hinzugefügt) und der vorherige Timer-Code wird nicht zur Warteschlange hinzugefügt. Nachdem der Timer-Code ausgeführt wurde, wird der Timer-Code in der Warteschlange sofort ausgeführt, und es gibt kein Intervall zwischen den Codeausführungen zwischen den Timern. Zu diesem Zeitpunkt müssen Sie verkettetes setTimeout verwenden.

Der Vorteil davon ist: Nachdem der vom vorherigen Timer auszuführende Code ausgeführt wurde und 200 ms wartet, wird ein neuer Timer erstellt und der Timer-Code zur Ausführung in die Warteschlange hinzugefügt nicht angezeigt. Die Situation wird übersprungen. Es kann ein Intervall zwischen den Codeausführungen zwischen den Timern geben (gemäß Ihren eigenen Einstellungen).

setTimeout(function(){
//要执行的代码 
setTimeout(arguments.callee,2000); 
},2000);
setInterval(function(){
//要执行的代码 
},200);
Nach dem Login kopieren
【Empfohlenes Lernen:

Javascript-Tutorial für Fortgeschrittene

Das obige ist der detaillierte Inhalt vonSo schließen Sie eine Seite mit Javascript automatisch zu einem geplanten Zeitpunkt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!