2010-08-13 8 views

Respuesta

15

https://developer.mozilla.org/en/DOM/document.getElementsByClassName

e: no admitido de forma nativa en IE < 9, por lo que tendrías que extender document/make a global function con algo como esto: http://robertnyman.com/2008/05/27/the-ultimate-getelementsbyclassname-anno-2008/ o utilice algo como sizzle o jquery - gracias a los comentarios a continuación.

+1

no compatibles con el IE. http://www.quirksmode.org/dom/w3c_core.html#t11 – user113716

+0

Acaba de darse cuenta, lo siento. Bloody IE .. actualizado. – dmp

+0

Parece que se nos promete asistencia en IE9. – UpHelix

14

Se han creado varias soluciones para trabajar con navegadores que no tienen getElementsByClassName nativo. Si utiliza cualquiera de las bibliotecas javascript modernas (por ejemplo, jQuery, Prototype), se espaciará automáticamente sobre estas lagunas específicas del navegador.

Así, por ejemplo, con jQuery:

$('.foo').get(); 

devuelve todos los elementos DOM con clase foo, en cualquier navegador.

Si sólo desea este problema en particular resuelto, y no desea utilizar una biblioteca completa, se puede tratar de usar algo como The Ultimate GetElementsByClassName, lo que le permite tener:

getElementsByClassName('foo') 

Aunque se trata de un par de años viejo, John Resig's comparison of various solutions al problema todavía es valioso.

Cuestiones relacionadas