jQueryを使って要素を追加したり消したりするときに、特に意識せず書いていたらメモリーリーク起こしちゃってたのでメモ。 たとえば以下のようなコード。 addを押したらspan要素が増えていって、next、prevで選択中の要素(赤色)が変わっていく。"remove unselected"で選択中の要素以外の要素を消す。 これで以下のような操作をするとメモリーリークする(DOMから削除された不要な要素がメモリに残り続ける)。 add を何回か押して要素を足す next を何回か押して選択要素を変える remove unselected を押して選択要素以外を削除 原因は、jQueryでnext()やprev()などを使って(あるいは他のメソッドでもだが)要素を次々と移っていったときに、current.prevObject にその前の要素を保持しているせいである。今回はjQueryオブジェク