マウスが休止状態のときにナビゲーション メニューを 50% の不透明度にフェードアウトする次のコードを作成しました。
var hidden, fadenav, dimNav = function () {
hidden = true;
$('#main-nav').animate({'opacity': 0.5}, 200);
};
$('document').ready(function () {
dimNav();
$('body').on('mousemove', function (e) {
if (hidden) {
$('#main-nav').animate({'opacity': 1}, 200);
hidden = false;
}
if (fadenav !== null) {
clearTimeout(fadenav);
}
fadenav = setTimeout(dimNav, 500);
});
});
#main-nav
私がやりたいのは、ユーザーが要素の上にマウスを置いたときにフェードしないようにすることです。
私はこれを無駄にしようとしました:
$('#main-nav').on('mouseover mouseout', function (e) {
if (e.type === 'mouseover') {
clearTimeout(fadenav);
} else {
fadenav = setTimeout(dimNav, 500);
}
});
誰もこれを行う方法を知っていますか?