我有一段 javascript 代码可以监听鼠标悬停并让 div 淡出并重新进入。
我遇到的问题是,如果用户鼠标多次悬停,从而导致函数的逻辑执行此操作:
mouse over¬
fade out
fade in [mouse over again] ¬
fade out
此时我同时出现 afade out
和 a fade in
,导致 div 出现奇怪的闪烁。而且我不知道如何防止它。
工作小提琴: http: //jsfiddle.net/WgNuX/4/将鼠标快速移出div,它会闪烁。
我的代码如下:
function check(){
var div_id = document.getElementById('my_div');
var opacity = window.getComputedStyle(div_id).opacity;
function fade_in(){
var opacity = window.getComputedStyle(div_id).opacity;
var direction =1 ; //fade in
transition_opacity(div_id,opacity,direction,0)
}
var direction = 0; //fade out first
transition_opacity(div_id,opacity,direction,fade_in)
}
var div_id = document.getElementById('my_div');
div_id.addEventListener('mouseover',check,false);
我能做些什么来防止这种情况发生?