どうやら 以下の方法で判定することができるようです。 // リクエストオブジェクトを作る var req = new ActiveXObject('Microsoft.XMLHTTP'); // フラグの準備 var sended = false; // readystatechange イベントを待つ req.onreadystatechange = function() { if (req.readyState == 4) { // キャッシュに存在しない場合 if (sended) { alert('loaded'); } // キャッシュに存在する場合 else { alert('cached'); } } }; // 通信開始 req.open('GET', 'hoge'); req.send(); // フラグを立てる sended = true; 解説 IE では、キャッシュ