22/01/11 08:59:20.14 e5xCtEGd.net
>>872
> それにjQueryのonで登録したハンドラはoffで開放しないとリークするけど
なんでいちいちボロを出すんだwww
最初からリークしないように設計されたんだが
歴史の話をしてやろうか?
古くかIEでattachEventでハンドラを登録した時ページ移動しなければ
メモリリークしてしまう問題をjQueryは解決したのが売りの一つだった
DOM APIの先はJavaScriptの領域外のブラウザのAPI(ActiveX?)だったため
JavaScriptの参照ポインタが機能しないのが根本的な原因
だからそれを解決するため、俺の記憶が間違っていなければ
オブジェクト(イベントハンドラ)を直接参照するのではなくIDを使った
ウィークポインタのような仕組みを使ってハンドラを管理した
DOM APIに直接登録するのはjQuery自身のイベントハンドラ一つで
いくつ登録しても、内部のハンドラマネージャーがうまいこと
転送するという仕組みで実装されたからメモリリークしないのがjQuery