HTMLページにこのJavaScriptコードがあるとしましょう
<script type="text/javascript">
$(document).ready(function(){ $('.info2').CreateBubblePopup({ position : 'left', align : 'center',
innerHtml: 'some text ',
innerHtmlStyle: { color:'#FFFFFF', 'text align':'center' },
themeName: 'all-black',
themePath: 'images/jquerybubblepopup-themes' }); });
</script>
このスクリプトで、xml ファイルから "info2" と "some test" を取得するようにしたいと思います。このファイルには、<-INFOID-> という "info2" のタグと "<" という "some text" のタグが追加されています。 -INFODATA-> (-なしで、タグが消える場所に追加しただけです)、以下のコードを使用してxmlを接続し、スクリプトを記述しました
<script type="text/javascript">
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","scores.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
document.write("<script type='text/javascript'>");
var x=xmlDoc.getElementsByTagName("GAME");
for (i=0;i<x.length;i++)
{
document.write("$(document).ready(function(){ $('.");
document.write(x[i].getElementsByTagName("INFOID")[0].childNodes[0].nodeValue);
document.write("').CreateBubblePopup({ position : 'left', align : 'center',");
document.write("innerHtml: '");
document.write(x[i].getElementsByTagName("INFODATA")[0].childNodes[0].nodeValue);
document.write("',");
document.write("innerHtmlStyle: { color:'#FFFFFF', 'text-align':'center' },");
document.write("themeName: 'all-black',");
document.write("themePath: 'images/jquerybubblepopup-themes' }); });");
}
document.write("</script>");
</script>
XML が Javascript で機能するかどうかわかりませんが、試してみただけですが、機能しませんでした。XML は JavaScript で機能しますか? はいの場合、私のコードで何が間違っていますか?
私の score.xml ファイルは次のようになります。
<SCORES>
<GAME>
<DATE>14.5.2012 12:05</DATE>
<TIME>FT</TIME>
<HOMETEAM>Team1</HOMETEAM>
<SCORE>4 - 0</SCORE>
<AWAYTEAM>Team2</AWAYTEAM>
<OTHER> </OTHER>
<INFO><![CDATA[<img class='info1' src='images/info.png' width='14px' height='14px' border='0' />]]></INFO>
<INFOID>info1</INFOID>
<INFODATA>FIRST BUBBLE</INFODATA>
</GAME>
<GAME>
<DATE>14.5.2012 12:05</DATE>
<TIME>FT</TIME>
<HOMETEAM>Team3</HOMETEAM>
<SCORE>2 - 0</SCORE>
<AWAYTEAM>Team4</AWAYTEAM>
<OTHER> </OTHER>
<INFO><![CDATA[<img class='info2' src='images/info.png' width='14px' height='14px' border='0' />]]></INFO>
<INFOID>info2</INFOID>
<INFODATA>SECOND BUBBLE</INFODATA>
</GAME>
</SCORES>
ページで使用したその他のタグ...最後の 2 つのタグは、lil img のポップアップ バブルであるこのスクリプトを構成するためのものです。