我需要在加载播放器之前获取 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/
最佳答案
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;
}
// ...
};
关于javascript - jQuery $.get 和 $.parseXML 获取 Vimeo 视频持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32296571/