2010-09-04 60 views

回答

7

如果您的瀏覽器支持getElementsByClassName,請使用其他網站上提供的衆多跨瀏覽器implementations中的一種。

本身,你會得到他們爲:

var elements = document.getElementsByClassName('nameOfClassHere'); 

這將返回陣列狀對象,你可以遍歷元素,比如你在一個數組做,但不能使用數組的方法在上面。

如果您使用的是像jQuery或MooTools這樣的庫,這個任務對您來說會變得更簡單。在jQuery來獲得具有類名是「MyClass的」所有元素,並得到了他們的文本內容轉換爲一個字符串使用,

var combinedText = $('.myClass').text(); 

獲取ID每個匹配元素的到一個數組使用jQuery:

var arrayOfIDs = $('.myClass').map(function() { return this.id; }).get(); 

如果使用MooTools的,你可以得到有使用所需類的每個元素的文本內容的數組:

var texts = $$('.myClass').get('text'); 

獲取ID每個匹配元素的到一個數組爲:

var arrayOfIDs = $$('.myClass').get('id'); 
+0

爲了將其轉換爲一個陣列,可以這樣做:'元素= Array.prototype.slice.call(元素,0);' – 2010-09-04 01:53:29

+0

1爲了徹底性和示例兩個庫,並注意到'getElementsByClassName'在每個瀏覽器中都不起作用。 – karim79 2010-09-04 02:00:09

+0

感謝@Matthew,這對IE6有用嗎?謝謝@karim :) – Anurag 2010-09-04 02:04:18

相關問題