第一次發帖見諒..我想做一個效果鼠標在div上停留兩秒后執行一些函數,不超過兩秒不執行;然后網上找了setTimeout這個函數成功解決了,因為一直是自學的所以基礎薄弱,有些不懂的地方求解一共三個問題在代碼中注釋了,萬分感謝!代碼:<script src="jquery.min.js"></script><script> var timer = null; // 1.此處為什么要在這里聲明timmer=null? $(function(){ $("#test").hover( function(){ $(this).html("懸停"); timer=setTimeout(function(){alert("hello")},2000); // 2.為什么不能直接去掉第 //一行的聲明 ,在此處var timer=setTimeout(...)... }, function(){ if(timer) // 3.這里的if語句有什么作用?我試著去掉后函數也能完整運行呀 clearTimeout(timer); $(this).html("測試"); }); }); </script></head><body> <div id="test"> 測試 </div></body>
延遲執行函數 setTimeout 前面的var xxx=null是什么作用?
HUX布斯
2018-11-13 14:09:39