Ich habe ein Ereignis, das ausgelöst wird, wenn ein Benutzer ihre Maus über ein div-Element hat und während sie die Maus über das Element bewegen. Ich kann jedoch keine Möglichkeit finden, ein Ereignis auszulösen, wenn die Maus nicht mehr bewegt wird. Zum Beispiel überprüft das Ereignis, an dem ich gerade arbeite, ob der Benutzer die Maus über einem Div hat, wenn dies der Fall ist, wird ein anderes Element angezeigt und folgt der Maus herum. Wenn der Benutzer das div verlässt, wird das gezeigte Element ausgeblendet. So wie es jetzt funktioniert, habe ich das gezeigte Element, das die Maus auf dem maused-div zeigt und ihr folgt, aber es ist nicht genau das, was ich will. Ich möchte, dass es nicht angezeigt wird, wenn sich die Maus bewegt, sondern wenn sich die Maus nicht mehr bewegt.Kann ein Ereignis ausgelöst werden, wenn die Maus nicht mehr bewegt wird?
HTML
<div class="tooltip"><p></p></div>
<div class="holder" id="1"></div>
<div class="holder" id="2"></div>
CSS
.holder{
display: block;
float: left;
margin-bottom: 0.25%;
width: 100%;
height: 200px;
cursor: pointer;
border-top: 1px solid rgb(100, 100, 0);
border-bottom: 1px solid rgb(100, 100, 0);
}
.tooltip{
position: absolute;
display: none;
width: 150px;
background-color: white;
z-index: 5;
}
JS
var holder = document.getElementsByClassName("holder");
var tooltip = document.getElementsByClassName("tooltip")[0];
for(var i = 0; i < holder.length; i++){
var moving;
holder[i].onmouseover = function(ev){
moving = false
tooltip.style.display = "block";
tooltip.style.top = ev.clientY;
tooltip.style.left = ev.clientX;
}
holder[i].onmouseout = function(ev){
moving = false
tooltip.style.display = "none";
tooltip.style.top = ev.clientY;
tooltip.style.left = ev.clientX;
}
holder[i].onmousemove = function(ev){
moving = true;
}
if(moving){
tooltip.style.display = "none";
tooltip.style.top = ev.clientY;
tooltip.style.left = ev.clientX;
}
}
Sie könnten eine Art Timeout implementieren .. während Maus Sie sauber zu bewegen und wieder laichen eine Funktion .. –
Vielleicht würde dies helfen: http://stackoverflow.com/questions/ 24727394/are-there-any-javascript-jquery-events-das-sind-wie-ein-onmousestop-or-any-eve –
Ehrfürchtig, danke Erik und Max – Robert