あじちゃんの備忘録。

〜ここはメモ帳です

【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);
})