同様の問題は以前に対処されていましたが、 bind() 関数を使用しているため、私のものは少し異なると思います。とにかく...
$('.overlay').bind("mouseenter",function(){
$(this).fadeTo('slow', 0);
}).bind("mouseleave",function(){
setTimeout(function() {
$(this).fadeTo('slow', 1);
}, 2000);
});
「mouseenter」でオーバーレイをフェードアウトしたいのですが、「mouseleave」後 2000ms でフェードバックします。
追加の質問があります。.overlay div がフェードアウトしたときに、その下にあるものをクリックできるようにする必要があります。つまり、div を完全に非表示にするか、z-index スタックを下に移動する必要があります。ただし、これを追加しようとすると、スクリプトはマウスが .overlay div を離れたと見なし、.overlay がフェードインします。
同じ理由で、fadeOut() と fadeIn() は使用できません。