<div class="codetitle"> <span><a style="CURSOR: pointer" data="16489" class="copybut" id="copybut16489" onclick="doCopy('code16489')"><u>コードをコピーします</u></a></span> コードは次のとおりです。</div> <div class="codebody" id="code16489"> <br><script language="javascript"> >function PollConn (){ <br>TimeCounter=window.setTimeout('PollConn();',5000); <br>function StopPoll(){ <br>window.clearTimeout(TimeCounter) <br>} <br>PollConn (); <br><br><br> </div> <br><br>一般的には、上記の方法がより一般的な方法です。 5秒ごとに自分に電話をかけ続けます。一般的なアプリケーションでは、ユーザーはそのようなコードを含むページに問題があることに気づきません。しかし、ユーザーがそのようなページに長時間滞在する必要がある場合、問題が発生します。 setTimeout は CPU を「吐き出し」続けるため、徐々に CPU がそのようなコードによって食い尽くされ、IE が停止するか実行を停止します。 <strong></strong>解決策は、clearTimeout を使用して、次の呼び出しの前にクリアすることです。 <br><div class="codetitle"><span><a style="CURSOR: pointer" data="8203" class="copybut" id="copybut8203" onclick="doCopy('code8203')"><u></u>コードをコピー</a></span></div> コードは次のとおりです:<div class="codebody" id="code8203"> <br><br><script language=" javascript"> ; <BR>function PollConn(){ <BR>if(TimeCounter) window.clearTimeout(TimeCounter) //最後のsetTimeoutをクリア <BR>TimeCounter=window.setTimeout('PollConn();',5000); <BR>function StopPoll(){ <BR>window.clearTimeout(TimeCounter) <BR>} <BR>PollConn() <BR></script></div>