Альтернативы querySelectorAll() для встроенного браузера

Я пишу приложение, которое будет работать во встроенном старом браузере (я имею в виду действительно старый браузер. Пользовательский агент: ANTGalio/2.1.19.12.2.1.19.12.020.3.0.00; vxWorks-6.3).

Этот браузер не поддерживает функцию querySelectorAll или querySelector. Я хотел бы знать альтернативу для тех функций, которые будут выполнять ту же работу.

Если нет функции, которая это сделает, где я могу взять код функции querySelector, чтобы я мог попытаться написать ее вручную с помощью JavaScript.


person Vitor Villar    schedule 26.07.2017    source источник
comment
Что поддерживает браузер? О каком конкретно браузере вы спрашиваете?   -  person Bergi    schedule 26.07.2017
comment
Вот тот же вопрос о IE6   -  person Bergi    schedule 26.07.2017
comment
Если быть точным, это пользовательский агент из браузера: ANTGalio/2.1.19.12.2.1.19.12.020.3.0.00; vxWorks-6.3   -  person Vitor Villar    schedule 26.07.2017


Ответы (1)


Если нет функции, которая это делает.

Есть… это querySelector. Вот почему он был создан. До его появления нам приходилось использовать другие методы.

Где взять код функции querySelector?

Для каждого браузера будет собственная реализация, обычно написанная на C++, поэтому, вероятно, она вам не очень пригодится.

Sizzle предоставляет библиотеку селекторов, которая выполняет аналогичную работу. Он используется jQuery как запасной вариант для старых браузеров. Это 2277 строк: это не то, что вы хотите воссоздать с нуля.

Вы также можете использовать такие функции, как getElementById, getElementByClassName, parentNode и т. д., вместо того, чтобы выражать вещи в терминах селекторов.

person Quentin    schedule 26.07.2017
comment
Я знаю о querySelector, но я работаю в браузере, в котором изначально нет этих функций. Вот почему я прошу альтернативы. И я попробовал Sizzle, тоже не сработало. - person Vitor Villar; 26.07.2017
comment
@VitorVillar. Моя точка зрения заключалась в том, что querySelector был создан для удовлетворения потребности. Если бы была замена, которая уже существовала в браузерах, ее не нужно было бы создавать в первую очередь. - person Quentin; 26.07.2017
comment
@VitorVillar Что не сработало, когда вы попробовали Sizzle? - person Bergi; 26.07.2017