プロが教える店舗&オフィスのセキュリティ対策術

以下のスクリプトがVista×IE8、Firefox(現時点でわかっているところで)で、
想定と異なった動作をしてしまいます。
XP上であれば、特に問題なく動くのですが、Win7は手元にないので、わかりません。

しかし、原因が一向にわからず・・・。
ご教授いただけますと幸いです。





var xhr;
function prefCheck(){

  ~省略~

xhr = false;
if(window.ActiveXObject) {
try {
xhr = new ActiveXObject('Msxml2.XMLHTTP');
} catch (e) {
xhr = new ActiveXObject('Microsoft.XMLHTTP');
}
} else if(window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
xhr.overrideMimeType('text/xml');
}
xhr.onreadystatechange=PrefCheck;
xhr.open("GET","hogehoge.php, true);
xhr.send(null);
}

function PrefCheck(){
if ((xhr.readyState == 4) && (xhr.status == 200)){
window.alert("hogehogehogehogehogehoge");
}

}

A 回答 (1件)

もはや、あんまり古いIEまで救ってやる必要は無いような気がするんですが、


一応
 var xhr;
 if(XMLHttpRequest)
  xhr = new XMLHttpRequest(); //IE7,IE8,IE9,Firefox,Chrome,Safari
 else if (window.ActiveXObject){
 try{xhr = new ActiveXObject("Msxml2.XMLHTTP");} //IE6(Win2000以降)
  catch(e){xhr = new ActiveXObject("Microsoft.XMLHTTP");} //もっと古いやつ
 }else xhr = null;
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!