Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung der Implementierungsmethode des JS-Verzögerungs-Eingabeaufforderungsfelds

Detaillierte Erläuterung der Implementierungsmethode des JS-Verzögerungs-Eingabeaufforderungsfelds

PHPz
PHPzOriginal
2016-05-16 15:29:341338Durchsuche

Dieser Artikel stellt hauptsächlich die Implementierungsmethode der JS-Verzögerungsaufforderungsbox vor und analysiert das Prinzip und die spezifischen Implementierungsschritte von JavaScript zur Implementierung der Verzögerungsaufforderungsfunktion. Es hat einen bestimmten Referenzwert

Eingabeaufforderungsfeld: Wenn die Maus auf den Avatar zeigt, wird ein Informationsfeld angezeigt. Wenn die Maus das Informationsfeld verlässt, verschwindet es Wenn Sie mit der Maus die Informationsbox verlassen, verschwindet die Informationsbox.

Funktionsideen:

1. Elemente abrufen.
2. Wenn die Maus auf p1 zeigt, wird p2 angezeigt.
3. Wenn die Maus p1 verlässt, lassen Sie p2 mit einer Verzögerung von 0,5 Sekunden verschwinden, damit Zeit bleibt, die Maus zu p2 zu bewegen.
4. Wenn die Maus auf p2 zeigt, wird p2 angezeigt. Da setTimeout in Schritt 3 so eingestellt wird, dass p2 verschwindet, kann p2 angezeigt werden, indem setTimeout mit clearTimeout() gelöscht wird.
5. Wenn die Maus p2 verlässt, lassen Sie p2 mit einer Verzögerung von 0,5 Sekunden verschwinden, damit Sie Zeit haben, die Maus auf p1 zu richten.
6. In Schritt 2 wurde der Mauszeiger auf p1 gesetzt und p2 wird angezeigt. Da setTimeout jedoch in Schritt 5 festgelegt wurde, um p2 verschwinden zu lassen, wird in Schritt 2 clearTimeout() hinzugefügt setTimeout, um p2 anzuzeigen.

JS-Code:

<script>
window.onload=function()
{
  var op1=document.getElementById(&#39;p1&#39;);
  var op2=document.getElementById(&#39;p2&#39;);
  time=null;
  op1.onmouseover=function()
  {
    clearTimeout(time);
    op2.style.display=&#39;block&#39;;  
  };
  op1.onmouseout=function()
  {
    time=setTimeout(function(){
      op2.style.display=&#39;none&#39;;
    },500);
  };
  op2.onmouseover=function()
  {
    clearTimeout(time);
  };
  op2.onmouseout=function()
  {
    time=setTimeout(function(){
      op2.style.display=&#39;none&#39;;
    },500);
  };
};
</script>

Da der Code ähnlich aussieht, kann er wie folgt vereinfacht werden:

<script>
window.onload=function()
{
  var op1=document.getElementById(&#39;p1&#39;);
  var op2=document.getElementById(&#39;p2&#39;);
  time=null;
  op2.onmouseover=op1.onmouseover=function()
  {
    clearTimeout(time);
    op2.style.display=&#39;block&#39;;  
  };
  op2.onmouseout=op1.onmouseout=function()
  {
    time=setTimeout(function(){
      op2.style.display=&#39;none&#39;;
    },500);
  };
};
</script>

HTML-, CSS-Code :

<p id="p1"></p>
<p id="p2"></p>
<style>
#p1{float:left;margin-right:10px;width:50px;height:50px;background:black;}
#p2{display:none;float:left;width:200px;height:200px;background:#0CF;}
</style>

【Empfohlene verwandte Tutorials】

1.JavaScript-Video-Tutorial
2. JavaScript-Online-Handbuch
3 . Bootstrap-Tutorial

Stellungnahme:
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