jQueryを使わずに画像の先読み(プリロード)

function preLoadImages() {
  for (var i = 0, I = arguments.length; i < I; ++i) {
    new Image().src = arguments[i];
  }
}

preLoadImages("image1.gif", "/path/to/image2.png");

jQueryには何も依存していない(jQueryAPIを使わずにcreateElementを使うくらい)のに、どうしてjQueryプラグインにしてしまったんだろう。プリロードのためだけjQueryを読み込ませるページは増えてほしくない。

あと、リンク先のスクリプトでは、生成したimage要素を配列に格納して、いわゆるクロージャに閉じ込めて破棄されないようにしているけど、これは必要なのかな。IE6、IE8、FirefoxOperaChromeの最新版(いずれもWindows)で確認した限りはしなくても問題なかった。むしろ、古いブラウザではメモリリークしてしまうのでよくないと思う。勘違いしていた。メモリリークパターンではない。