動作ブラウザ
win | mac | linux |
n7 | m1 | e5 | e6 | o7 | n7 | m1 | e5 | s1 | n7 | m1 | k3 |
○ | ○ | × | ○ | × | ○ | ○ | × | × | ○ | ○ | × |
ソース
<script type="text/javascript">
<!--
/*==========================================================
//クロスブラウザ load関数
引数 : url XMLファイルのurl
func 読み込み成功時の起動関数名
戻値 : 読み込まれたXMLノードツリー
例 : loadFile( 'data.xml', func1 )
function func1(){alert('test')}
Support http://game.gr.jp/js/
*/
function loadFile(url,func)
{
if (window.ActiveXObject)
{
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM")
xmlDoc.async = false
if(xmlDoc.load(url)){func(xmlDoc)}
} else if ( document.implementation &&
document.implementation.createDocument )
{
var xmlDoc = document.implementation.createDocument("","",null)
xmlDoc.onload = function (){func(xmlDoc)}
xmlDoc.load(url)
}
return xmlDoc
}
//読み込んだXMLのデータをもとにHTMLへ書き出す
function writeXMLData(xdoc)
{
//XML内の"node"という名前のタグの配列を作る
var wknode = xdoc.getElementsByTagName("node")
//書き出すためのdivを作っておく
var wkaaa = document.body.insertBefore(
document.createElement("div"), document.body.firstChild)
//"node"タグが出てきた順に処理する
for( i = 0 ; i < wknode.length ; i++ )
{
//各タグ内のfirstChildのデータだけをinnerHTMLで書き出す
wkaaa.innerHTML += wknode[i].firstChild.nodeValue + '<br>'
}
}
//-->
</script>
<input type = "button"
value = "XML読み込み"
onclick= "loadFile('data.xml',writeXMLData)">