本日は久しぶりにJavaScript をお勉強
IE9 の互換性の問題の対応
IE8 までは JavaScript で XML のドキュメント作るとき var objDOM = new ActiveXObject(STR_ACTIVEX); XML のテキストを読み込むときには objXML.loadXML(text_xml); でできていたが、IE9 から loadXML がサポートされなくなっていた。 また、IE9 ではドキュメントの作成は、FireFox と同じように document.implement.createDocument() ; でXMLのドキュメントができるようになっていた。 IE9 では DOMParser を XMLSerializer を サポート http://blogs.msdn.com/b/ie/archive/2010/10/15/domparser-and-xmlserializer-in-ie9-beta.aspx だが、createDocument で作成したドキュメントは loadXML のようなテキストをパースする機能はないので これもFireFoxと同じようにDOMParser を使う必要がある。 var parser = new DOMParser(); objXML = parser.parseFromString(text_xml, "text/xml"); また、XMLSerializer もサポート serializer = new XMLSerializer(); var xmlString = serializer.serializeToString(doc); XMLHttpRequest を使うこと IE で ActiveXObject("Microsoft.XMLHTTP"); を使っていた場合は XMLHttpRequest(); を使うこと 以上 |
SIMPLE-Index勉強会 >