iframe でコンテンツを表示する組み込みシステムに取り組んでいます。(ajax に基づく) signalR と jquery を使用します。時間が経つにつれて、ブラウザはますます遅くなり、メモリ使用量はどんどん増えていきます。そのため、潜在的なメモリの問題をすべて取り除きたいと考えています。
新しいページが iframe に読み込まれると、クリックとフォーカスのイベント ハンドラーをアタッチします。
iframe ページを差し替える直前に、それらを外します。
ただし、 $.cache を調べると (Firefox を使用した PC でテストしているため、実際のシステムと完全に同じではありません)、iframe がリロードされるたびに $.cache がますます多くの要素を取得していることがわかります。
これは物事を行う正しい方法ですか?他に試せることはありますか?$.cache が増えているのはなぜですか?
(興味がある場合は、Midori ブラウザーでラズベリー pi (Linux を実行) を使用していますが、使用できる他の (ほとんどは Web キット) ブラウザーの選択肢があります)。
iframeの内容を変更するために使用するJavascript ...
hubProxy.client.loadPage = function (pageFilename, pageType) {
frameNode = $("#myIframe").contents();
$("a", frameNode).off();
$("#myIframe")[0].src = pageFilename;
};