在我甚至加载播放器之前,我需要在vimeo上获取特定视频的持续时间,所以我看不到其他选项而不是进行AJAX调用并尝试获取有关视频的信息。我准备了以下结构:
$.get( "http://vimeo.com/api/v2/video/8957328.xml", function( data ) {
var xmlDoc = $.parseXML(data),
$duration = $(xmlDoc).find("title");
$('div').html($duration.text());
});
正如我所说,XML已被正确解析,但我无法获得最终数据,而且我甚至不知道为什么它无法正常工作。有什么帮助吗?
JSFiddle:http://jsfiddle.net/nLz8k31v/
答案 0 :(得分:3)
jQuery本身会为您解析响应,即data
已经过XML解析。只需将data
传递给jQuery构造函数即可。
$.get( "http://vimeo.com/api/v2/video/8957328.xml", function( data ) {
var $xmlDoc = $(data),
$duration = $xmlDoc.find("title");
$('div').html($duration.text());
});
您的代码无效,因为$.parseXML
的传递值不是字符串the .parseXML
method returns null
。
jQuery.parseXML = function( data ) {
var xml;
if ( !data || typeof data !== "string" ) {
return null;
}
// ...
};