2011-07-04 15 views
1

情報を含むXMLファイルを一度に1つずつ読み込み、HTMLページに表示する必要があります。 <div>内のHTML内でそれ自身のスクロールのように表示され、<p>の形式で表示する必要があります。誰かがこれをする方法で私を助けることができますか?XMLコンテンツを読み込んでJavaScriptを使用してHTMLページに挿入

<?xml version="1.0" encoding="iso-8859-1" ?> 

<projects> 

<project> 
     <flag>1</flag> 
     <name>Project 1</name> 
     <descp> Short description. </descp> 
     <rating> 6 </rating> 
     <link> URL1 </link> 
     </project> 

<project> 
     <flag>1</flag> 
     <name>Project 2</name> 
     <descp> Short description. </descp> 
     <rating> 9 </rating> 
     <link> URL2 </link> 
     </project> 

<project> 
     <flag>1</flag> 
     <name>Project 3</name> 
     <descp> Short description. </descp> 
     <rating> 4 </rating> 
     <link> URL3 </link> 
     </project> 

<project> 
     <flag>1</flag> 
     <name>Project 4</name> 
     <descp> Short description. </descp> 
     <rating> 5 </rating> 
     <link> URL4 </link> 
     </project> 

</projects> 

abc.xml

はJavaScript:

<script type="text/javascript"> 
window.onload = timer; 

function timer() { 
    var xmlDoc=new ActiveXObject("MSXML.DOMDocument"); 
    xmlDoc.async="false"; 
    xmlDoc.load("./gsss_hp.xml"); 
    var projects = xmlDoc.documentElement; 
    var project = projects.childNodes(0); 
    var numPro = projects.childNodes.length; // to find number of projects entered in the file 

    for(var i=0; i<numPro; i++){ 
     for(var j=0; j<100000;j++){j+=18; j-=18; for(var z=0;z<5000;z++){}} /* do noting for nested loops */ 
     show(i); 
    } 
} 

function show(num) { 
    var xmlDoc=new ActiveXObject("MSXML.DOMDocument"); 
    xmlDoc.async="false"; 
    xmlDoc.load("./gsss_hp.xml"); 

    var projects = xmlDoc.documentElement; 
    var project = projects.childNodes(num); 
    var attr = project.childNodes.length; 

    for(var i=0;i<attr;i++){ 
     var txt = xmlDoc.getElementsByTagName("project")[0].childNodes[i].nodeValue; 
     txt = txt + "<br />"; 
     var idPos; 
     if(i==1) { idPos = "name"; } 
     else 
     if(i==2) { idPos = "descp"; } 
     else 
     if(i==3) { idPos = "rating"; } 
     else 
     if(i==4) { idPos = "link"; } 

     document.getElementById(idPos).innerHTML = txt; 
    } 
} 

</script> 
+0

http://www.google.com/search?q=news+scroller+xml – mplungjan

答えて

1

私はあなたに実際のコーディングを残しておきますが、私はこのようなもののために使用する一般的な構造は次のとおりです。

  • XMLを読み込むことから始めます。
  • XMLが読み込まれたら、データを通常のjavascript配列に抽出して、扱いやすくします。
  • 指定された間隔(http://www.w3schools.com/js/js_timing.asp)で描画関数を呼び出し、最後に表示されたインデックスを記憶する(グローバル)変数を設定するには、setTimeoutを使用します。
  • draw関数はデータを表示し、変数をインクリメントします。 ==長さの場合、カウントをリセットします。
+0

http://w3fools.com/ – mplungjan

関連する問題