/* Ajax(アジャックス)サンプルコード(0) - HTTPリクエストを行うコード。 ※インターネットエクスプローラはウィンドウズ版の5.0以降を対象とします。 */ /******************************************************************************** HTTP通信のセッティング。 ********************************************************************************/ function httpReq() { var h=null; /**************************************************** 通信を行うオブジェクトのインスタンスの生成。 ****************************************************/ // IE 6.0以降でのアクティヴXを用いた独自仕様のHTTPリクエスト。 /* ※IE 7.0からXMLHttpRequest()も使えるようになりましたが、  IE 7.0ではローカルからXMLHttpRequest()をテストすると失敗する事があるため、  使わないようにしております。 */ try { h=new ActiveXObject('Msxml2.XMLHTTP'); } // 対応していないとエラーとなるので…、 catch(e) { // 標準的なHTTPリクエストで試す。 try { h=new XMLHttpRequest(); } // これもダメなら…、 catch(e) { // ウィンドウズ版IEの旧ヴァージョンで試す(※現行版でも使えるが性能が悪いので使わない)。 try { h=new ActiveXObject('Microsoft.XMLHTTP'); } // これもダメならエラーなのでぬるぽを返す。 catch(e) { return(null); } } } return(h); } /******************************************************************************** (別文書の)要素ノードを付け足す処理。 ※IEは文書間のノードの移動を許さないため(実は仕様に沿っている)、  このようにノードのデータを一個一個移して行くしかない。 ********************************************************************************/ function appendOthersNode(o, e) { var ow=o.ownerDocument || o; //追加先が属する文書 var o1=ow.createElement(e.tagName); //新要素ノード var i,j; // 属性。 var a=e.attributes; j=a.length; while (--j>=0) { var a1=a.item(j); o1.setAttribute(a1.nodeName, a1.nodeValue); } var ele=e.childNodes; var i=-1; while (++i