[英]Memory leak issues with setTimeout in javascript
我有一個JavaScript代碼來控制動畫的移動div。在此我使用setTimeout來使div移動。 您可以單擊以下鏈接播放動畫。
`http://jsfiddle.net/dudling007/PfPzj/3/`
問題在於,播放動畫后,每當我在暫停和恢復按鈕上單擊兩次時,會占用大量內存,並且暫停按鈕的單擊也變得很慢。 我從MAC OSX的活動監視器中看到了%CPU和實際內存消耗。有人可以幫助我,單擊暫停按鈕10 -14次后,占用大量內存的代碼是什么問題。
內存泄漏的發生是因為每次調用moveCard
方法時moveCard
設置$('#pause_button').click
事件。 按鈕綁定應移出“對象”循環。
您可以使用Firefox的工具鏈接firebug來檢查javascript的控制台日志。 這是您的帶有登錄暫停按鈕的示例。 這應該只發生一次。 http://jsfiddle.net/Th6ha/1/
$('#pause_button').click(function() {
console.log('pause pressed');
arrayObject.pause(wStart,lStart,wEnd,lEnd);
$('#resume_button').css('display','inline-block');
$('#pause_button').css('display','none');
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.