นี่คือปลั๊กอิน jQuery ซึ่งจะส่งคืนอาร์เรย์ของคลาสทั้งหมดที่องค์ประกอบที่ตรงกันมี
;!(function ($) {
$.fn.classes = function (callback) {
var classes = [];
$.each(this, function (i, v) {
var splitClassName = v.className.split(/\s+/);
for (var j = 0; j < splitClassName.length; j++) {
var className = splitClassName[j];
if (-1 === classes.indexOf(className)) {
classes.push(className);
}
}
});
if ('function' === typeof callback) {
for (var i in classes) {
callback(classes[i]);
}
}
return classes;
};
})(jQuery);
ใช้มันเหมือน
$('div').classes();
ในกรณีของคุณกลับมา
["Lorem", "ipsum", "dolor_spec", "sit", "amet"]
นอกจากนี้คุณยังสามารถส่งฟังก์ชั่นไปยังวิธีการที่จะเรียกในแต่ละชั้นเรียน
$('div').classes(
function(c) {
// do something with each class
}
);
นี่คือ jsFiddle ที่ฉันตั้งค่าเพื่อสาธิตและทดสอบ http://jsfiddle.net/GD8Qn/8/
จาวาสคริปต์ขนาดเล็ก
;!function(e){e.fn.classes=function(t){var n=[];e.each(this,function(e,t){var r=t.className.split(/\s+/);for(var i in r){var s=r[i];if(-1===n.indexOf(s)){n.push(s)}}});if("function"===typeof t){for(var r in n){t(n[r])}}return n}}(jQuery);