Как выбрать класс внутри класса или тега, используя функцию getElementsByClass () Javascript? - PullRequest
2 голосов
/ 06 января 2011

В jQuery это будет просто

$("a.class").randommethod();

или

$(".class1 .class2").randommethod();

Как мне добиться того же эффекта, используя чистый Javascript? (Я редактирую программное обеспечение с открытым исходным кодом для личного использования, и оно не использует jQuery)

Ответы [ 2 ]

2 голосов
/ 06 января 2011

Вы не можете сделать это, используя getElementsByClassName. Вам нужно будет использовать что-то более похожее на querySelectorAll, которое принимает селекторы стиля CSS.

var result = document.querySelectorAll('.class1 .class2');

Вы должны заметить, что ни один из методов не имеет полной кросс-браузерной поддержки. Вот почему люди используют библиотеки JavaScript. Если вам не требуется поддержка старых браузеров, тогда querySelectorAll - хороший выбор.

Другой вариант - использовать Sizzle механизм выбора , который использует jQuery.

1 голос
/ 06 января 2011

Вам нужно написать свой собственный механизм выбора или использовать установленный, например, sizzle (http://sizzlejs.com/),, который используется в jQuery.

...