我試圖解析JSON數據到一個類名「slide_content」靶向類的名字反覆用JS
的具體迭代來得到這樣的:
slide_content[0]
但JS不提供getElementByClass()
選擇器。
有問題的API數據是在這裏: Converting Straight JS to JQuery
乾杯! Myles
我試圖解析JSON數據到一個類名「slide_content」靶向類的名字反覆用JS
的具體迭代來得到這樣的:
slide_content[0]
但JS不提供getElementByClass()
選擇器。
有問題的API數據是在這裏: Converting Straight JS to JQuery
乾杯! Myles
使用jQuery。它允許您使用$('.someClass')
來檢索具有給定類名稱的所有元素。
如果因爲某些原因無法使用jQuery或其他JS庫,只需使用jQuery也使用的Sizzle選擇器引擎 - 它不是很多代碼,因此您甚至可以將其複製粘貼到項目的一個JS文件中(但不要那樣做,這很醜陋:p)。但既然你用jQuery標記你的問題,我想你可以使用jQuery ...
新版瀏覽器(IE9及以上)have support爲document.getElementsByClassName
(具有諷刺意味意味着它具有比querySelectorAll
的支持較少,但我離題...) ,但這可能不會滿足您的兼容性需求。在這種情況下,你可以使用類似的東西來獲得一個帶有類的節點數組。
var nodes = document.getElementsByTagName('*'),
targetClass = 'myclass',
result = [];
for(var i = 0, l = nodes.length; i < l; i++){
if((nodes[i].className + ' ').indexOf(targetClass + ' ') !== -1){
result.push(nodes[i]);
}
}
這不是getElementsByClassName
的確切重複的,因爲該函數返回一個NodeList
,但它應該是對大多數來說已經足夠接近。
在文檔中,「id」值確實需要是唯一的。因此,當您動態地添加內容時,您應該不給元素「id」值(而是使用「class」值),否則將合併唯一的「id」值。 – Pointy 2011-01-24 18:34:52
如果我給他們類的價值,那麼我不能直接針對他們作爲一些奇怪的原因JS支持getElementByID但不getElementByClass ...我需要他們都有相同的類爲了使選項卡滑塊功能,從而意味着類的用法名稱,但類名不能通過JS API進行定位。 – 2011-01-24 18:37:47