Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung des verzögerten Eingabeaufforderungscodes für das Javascript-Eingabeaufforderungsfeld

Detaillierte Erläuterung des verzögerten Eingabeaufforderungscodes für das Javascript-Eingabeaufforderungsfeld

伊谢尔伦
伊谢尔伦Original
2017-07-22 10:43:091287Durchsuche

Prompt-Box-Funktion: Wenn die Maus auf den Avatar zeigt, wird ein Informationsfeld angezeigt. Wenn die Maus den Avatar verlässt, verschwindet das Informationsfeld Das Informationsfeld verschwindet.

Implementierungsideen:

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>

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des verzögerten Eingabeaufforderungscodes für das Javascript-Eingabeaufforderungsfeld. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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