具有特定类名的所有元素的Javascript数组

我试图从我的网页中的某个类的元素创建一个数组。 数组应该使用类videoLink从所有标签中获取videofile属性值。

数组中的最终值应该是。

cycling_large, ocean_medium, winecountry_part1    

我尝试了这个,但是没有用。

 var values = $('.videoLink').map(function() { return this.attr('videofile'); }).get(); 

提前致谢。

 var links = document.getElementsByClassName("videoLink"); var values = [].map.call(links, function (el) { return el.getAttribute("videofile"); }); 

因为你不是简单的事情jQuery。

浏览器支持:

  • ES5垫片
  • DOM垫片

改变return this.attr('videofile'); return $(this).attr('videofile'); 。 你需要将它包含在$()以便它成为一个jQuery对象,然后你可以调用attr()

示例: http : //jsfiddle.net/r9xJn/

 var result = $.map($('a.videoLink'), function(a) { return $(a).attr('videofile'); }); 

工作示例: http : //jsfiddle.net/hY6zM/