Javascript XML文件没有';HTML5视频播放时无法加载
我应该能够加载相关的XML文件,并在视频播放时显示XML文件的内容 我错过了什么 JAVSCRIPTJavascript XML文件没有';HTML5视频播放时无法加载,javascript,jquery,xml,html5-video,Javascript,Jquery,Xml,Html5 Video,我应该能够加载相关的XML文件,并在视频播放时显示XML文件的内容 我错过了什么 JAVSCRIPT var XML_PATH = "http://www.adjustyourset.tv/interview/cuepoints.xml"; var cuepoints=new Array(); $(document).ready(function() { loadXML(); }); function loadXML() { $.ajax({ ty
var XML_PATH = "http://www.adjustyourset.tv/interview/cuepoints.xml";
var cuepoints=new Array();
$(document).ready(function() {
loadXML();
});
function loadXML()
{
$.ajax({
type: "GET",
url: XML_PATH,
dataType: "xml",
success: function onXMLloaded(xml)
{
// set cuepoints
cuepoints=$(xml).find("cuepoints");
// loop for each cuepoint
$(xml).find('cuepoint').each(function loopingItems(value)
{
// create an object
var obj={
timeStamp:$(this).find("timeStamp").text(),
desc:$(this).find("desc").text(),
thumbLink:$(this).find("thumbLink").text(),
price:$(this).find("price").text()};
cuepoints.push(obj);
$("#mycustomscroll").append('<ul>');
$("#mycustomscroll").append('<li id="item"><strong>'+(value+1)+"</strong><br/><strong>Time Stamp: </strong>"+obj.timeStamp+'</li>');
});
// close </ul>
$("#mycustomscroll").append('</ul>');
// append li tags
$("#leftcolumn").append('<li src="'+cuepoints[0].desc+'"> <p src="'+cuepoints[0].thumbLink+'" /></li>');
$("#price").append(cuepoints[0].price);
}
});
}
var XML\u路径=”http://www.adjustyourset.tv/interview/cuepoints.xml";
var cuepoints=新数组();
$(文档).ready(函数(){
loadXML();
});
函数loadXML()
{
$.ajax({
键入:“获取”,
url:XML\u路径,
数据类型:“xml”,
成功:函数onXMLloaded(xml)
{
//设置提示点
cuepoints=$(xml).find(“cuepoints”);
//为每个提示点循环
$(xml).find('cuepoint').each(函数循环项)(值)
{
//创建一个对象
var obj={
时间戳:$(this).find(“时间戳”).text(),
desc:$(this.find(“desc”).text(),
thumbLink:$(this).find(“thumbLink”).text(),
价格:$(this.find(“price”).text()};
推(obj);
$(“#mycustomscroll”).append(“”);
$(“#mycustomscroll”).append(“- ”+(value+1)+“
时间戳:“+obj.timeStamp+” ”);
});
//关闭
$(“#mycustomscroll”).append(“”);
//附加li标签
$(“#leftcolumn”).append(“ );
$(“#price”).append(cuepoints[0].price);
}
});
}
没有调用init()
改变
function init() {
// call loadXML function
loadXML();
}
到
嗯。现在我明白了这个问题。您可以从ajax请求中获取xml,但无法正确解析它 如果您关心这段代码
$(xml).find('cuepoint').each(function loopingItems(value)
{
// create an object
var obj={timeStamp:$(this).find("timeStamp").text(), desc:$(this).find("desc").text(), thumbLink:$(this).find("thumbLink").text(), price:$(this).find("price").text()};
cuepoints.push(obj);
// append <ul> and timeStamp
$("#mycustomscroll").append('<ul>');
$("#mycustomscroll").append('<a><li id="item"><strong>'+(value+1)+"</strong><br/><strong>Time Stamp: </strong>"+obj.timeStamp+'</li></a>');
});
$(xml).find('cuepoint').each(函数循环项)(值)
{
//创建一个对象
var obj={timeStamp:$(this).find(“timeStamp”).text(),desc:$(this).find(“desc”).text(),thumbLink:$(this).find(“thumbLink”).text(),price:$(this).find(“price”).text();
推(obj);
//附加和时间戳
$(“#mycustomscroll”).append(“”);
$(“#mycustomscroll”).append(“- ”+(value+1)+“
时间戳:“+obj.timeStamp+” ”);
});
然后我建议您使用this.getAttribute('timeStamp')或$(this.attr('timeStamp')
你不会从中得到任何东西,而不是
$(this).find(“timeStamp”).text()
,因为这是一个属性而不是元素。函数永远不会在小提琴中调用。在视频播放过程中手动呼叫他们对我来说在Chrome上很好。你介意修理小提琴吗?@pimvdb我已经更新了小提琴,但仍然没有working@DD77:谁在调用init()?@karcha我知道了,但是xml文件没有加载,我看不到内容。有什么帮助吗?@DD77:及以上请避免在另一个查找操作中写入查找操作,因为如果处理更多数据,它们可能会导致性能问题。@DD77:没有。。。我把电话留给你了。为什么我看不到其他人?desc:$(this.attr(“desc”),thumbLink:$(this.attr(“thumbLink”),price:$(this.attr(“price”)};让我们知道您正在尝试使用提示点[0]。desc为什么要这样做?它将返回xml,而不是使用您创建的obj尝试的对象
$(xml).find('cuepoint').each(function loopingItems(value)
{
// create an object
var obj={timeStamp:$(this).find("timeStamp").text(), desc:$(this).find("desc").text(), thumbLink:$(this).find("thumbLink").text(), price:$(this).find("price").text()};
cuepoints.push(obj);
// append <ul> and timeStamp
$("#mycustomscroll").append('<ul>');
$("#mycustomscroll").append('<a><li id="item"><strong>'+(value+1)+"</strong><br/><strong>Time Stamp: </strong>"+obj.timeStamp+'</li></a>');
});