Cet article décrit la méthode d'utilisation de setTimeout pour implémenter une boîte d'avertissement pop-up retardée. Partagez-le pour votre référence. Les détails sont les suivants:
Montrez d'abord un code JS pour la fenêtre de contexte de retard / chronométré / forcé
Paramètre Explication: Définir l'heure: puis.SetTime (alors.getTime () + 1 * 60 * 60 * 1000) MyLove / Ttan.htm (Page Web de transition) HTM HTTP: // Papup Web Page / est la page Web pour faire un déficit: 1 (barre de défilement) Statut: 1 (barre de statut) Aide: 1 (bouton d'aide) Toolbar = 1 (barre de travail) Resizable: 1 (Bouton d'aide) Toolbar = 1 (barre de travail) Resizable: 1 (Bouton d'aide) Toolbar = 1 (Barne de Tool) Taille de modification) DialogWidth: 800px (largeur) DialogHeight: 600px (hauteur) 3000 (temps de contexte de retard, unité: millisecondes.1 second = 1000m String (document.cookie) var cookieheader = "cookie1 =" var beginPosition = Cookiestring.indexof (cookieheader) if (BeginPosition! = -1) {} else {document.cookie = "cookie1 = popwin; expires =" + Alors.togmtString () focusId = setTimeout ("focus (); window.showmodelessDialog ('ttan.htm', '', 'scroll: 0; status: 0; Aide: 0; Resizable: 0; DialogWidth: 0px; DialogHeight: 0px ') ", 3000) window.focus ();}} get (); </cript> <! - Pop-up ---> Les contenus de ttan.htm: <script lingots = "javaScript"> <! - window.open ("http: // pag-up webpage /"); // -> </cript> <script linguisse = "javascrip Et il peut réaliser un pop-up forcé! !Une fois le code suivant exécuté, une boîte d'avertissement apparaîtra après avoir cliqué sur le bouton, ce qui montre principalement comment utiliser Settimeout
<! Doctype html> <html lang = "en"> <éadf> <meta charset = "utf-8"> <t titre> Détraver la boîte d'invite de l'affichage </tapie> <style> # div1 {float: left; Largeur: 60px; hauteur: 60px; Color en arrière-plan: Aqua; } # div2 {position: relative; flottant: à gauche; marge: 0 10px; Largeur: 200px; hauteur: 200px; Color d'arrière-plan: #CCCCCC; Affichage: aucun; } </ style> <cript> window.onload = function () {var odIv1 = document.getElementById ('div1'); var odiv2 = document.getElementById ('div2'); var timer = null; // odiv1.onmouseOver = function () {// cleartimeout (timer); // odiv2.style.display = 'block'; // div2 // lorsque la souris se déplace dans div1}; //// odiv1.onmouseout = function () {// timer = setTimeout (function () {// odiv2.style.display = 'non'; // masquer div2 //} lorsque la souris supprime Div1, 500); // Afin de passer de Div1 à Div2, Div2 Hidden devrait avoir un paramètre de retard //}; //// odiv2.onmouseOver = function () {// cleartimeout (timer); // Effacer le paramètre de retard, lorsque la souris se déplace dans Div2, Div2 doit être affiché //}; //// odiv2.onmouseout = function () {// timer = setTimeout (function () {// odiv2.style.display = 'non'; // Lorsque la souris sort de div2, div2 doit être caché //}, 500); // Lorsque la souris déplace Div2 et dans Div1, Div2 clignote et affichera à nouveau, définissez un retard pour effacer l'effet clignotant; // // Mais après avoir réglé le retard et lorsque la souris se déplace dans Div1, Div2 est cachée car Settimeout, // //, le retard doit être effacé, et le code pour le retard est ajouté dans l'événement ODIV1.onmouseOver pour effacer le retard. //}; // Étant donné que les codes de ces quatre événements sont identiques ou similaires, le traitement simplifié suivant peut être effectué: odiv1.onmouseOver = odiv2.onmouseOver = function () {ClearTimeout (timer); odiv2.style.display = 'bloc'; / * Lorsque la souris se déplace dans Div1, Div2 est affichée. Bien que ODIV2.OnmouseOver ne soit pas écrit dans le odiv2.style.display = 'block'; Mais en fait, ODIV2 est dans l'état «bloc», écrire un code de plus n'a aucun impact substantiel * /}; ODIV1.OnMouseout = ODIV2.OnMouseout = function () {timer = setTimeout (function () {odIv2.STYle.display = 'None'; // Hide Div2 lorsque la souris supprime Div1}, 500); // Pour passer de Div1 à Div2, il devrait y avoir un paramètre de retard lorsque Div1 est déplacé de Div1}; // Le résultat de l'exécution de code simplifié est exactement le même que l'effet de code précédent. } </ script> </ head> <body> <h2> Retter la boîte d'invite </h2> <div id = "div1"> </ div> <div id = "div2"> </ div> </ody> </html>Les points qui doivent être prêts à prêter attention lors de l'écriture de la boîte d'invite de retard sont enregistrés dans les commentaires. Veuillez y faire attention un par un. Cette fonction est plus fluide après avoir lu le tutoriel vidéo. La raison en est qu'avant la rédaction du code, une liste des fonctions requises est implémentée une par une. S'il y a un problème, il est préférable de faire des ajustements correspondants que d'écrire directement le code.