【jQuery】n秒間hoverすると発火する処理
$("#target").mouseenter(function(){ //1秒間hoverしたら表示 timmer = setTimeout(function(){ console.log("SUCCESS!"); },1000); } }).mouseleave(function(){ clearTimeout(timmer); });
ポイント
setTimeout
を使う.- カーソルが外れた時に
clearTimeout
でタイマーを切って処理への道を断つ. setTimeout([処理], [n/1000秒])
なので、1秒=1000で記載する.
✌️
もちろんhover()
でもできる.
$("#target").hover(function(){ //1秒間hoverしたら表示 timmer = setTimeout(function(){ console.log("SUCCESS!"); },1000);},function(){ clearTimeout(timmer); })