Это плохо использовать $$ в Prototype? - PullRequest
3 голосов
/ 22 июня 2011

Документация API прототипа JS упоминает функцию $$(), которая позволяет выбирать и расширять элементы на основе селекторов CSS, как это делает функция $() в jQuery.

Однако, на этой странице, $$ представляется как какое-то последнее средство:

Иногда обычных инструментов из вашего арсенала DOM недостаточно для быстрого поиска элементов или наборов элементов. Если вы знаете древовидную структуру DOM, вы можете просто использовать селекторы CSS, чтобы выполнить работу.

Почему это? Должен ли я держаться подальше от $$ и просто использовать вместо него document.getElementsByClassName (тьфу)?

Ответы [ 2 ]

6 голосов
/ 22 июня 2011

На основании той цитаты, которую вы написали, я бы сказал, что они поощряют вас использовать $$().$$() предлагает кросс-браузерный способ быстрого и простого доступа к элементам.С другой стороны, document.getElementsByClassName() либо глючит, либо не работает в версии IE вплоть до версии 8 .

включительно.
0 голосов
/ 24 июня 2011

В сложном проекте я стараюсь не использовать $$(), чтобы случайно не выбрать то, что мне не нужно. Для меньшего проекта я бы не волновался. Обычно я могу выполнить то, что мне нужно, с помощью $(Element).childElements или $(Element).immediateDecendants.

...