我有字幕XML文件,它有start,dur和text来分配temporay数组,然后传递给每个索引的Subtitle数组。当我想看到带有0索引的Subtitle数组时,它应该打印第一个包含start,dur和text的文本行,而是打印最后一个文本行。 错误的结果显示,
467.071,3.643,感谢收看,请订阅,评分和评论
我尝试了索引50,它仍然打印最后一行。我是在错误的循环中添加它还是什么?
以下是前3行XML的示例(总文本行数为136),
<transcript>
<text start="2.014" dur="1.276">Greetings fellow nerds.</text>
<text start="3.291" dur="3.446">In this video we're going to make glow sticks of various colors</text>
<text start="6.738" dur="2.277">and explain a few interesting points about them.</text>
</transcript>
这是一个javascript示例,
<script type="text/javascript">
function loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
}
function init()
{
var subtitleArray = new Array();
var tempArray = new Array();
var c = document.getElementById('container');
captionsDoc = loadXMLDoc("captions.xml");
x=captionsDoc.getElementsByTagName('text');
for(i=0;i<x.length;i++)
{
tempArray[0] = x[i].getAttribute('start');
tempArray[1] = x[i].getAttribute('dur');
tempArray[2] = x[i].childNodes[0].nodeValue;
subtitleArray[i] = tempArray;
}
c.innerHTML = subtitleArray[0];
}
window.onload = init;
</script>