Согласно документам jQuery, мне нужно экранировать метасимволы, которые встречаются в моих строках селектора, когда они встречаются в виде литерала.Тем не менее, я не смог найти очень много конкретных примеров того, когда и когда не избегать селекторов.Так когда и когда мне не нужно экранировать метасимволы, когда они должны интерпретироваться как литерал в:
Селекторах атрибутов?то есть
$("[attr=value]")
Id селекторы?т.е.
$("#id")
Селекторы класса?т.е.
$(".class");
И есть ли способ написать функцию, которая заменяет метасхемы в строках селектора, сохраняя при этом начальный символ?то есть:
// replace all meta chars, preserving the id selection?
$("#id.rest$of*string")
// replace all meta chars, preserving the attribute selection?
// going back to my previous question, do I even need to escape the metachars in this situation?
$("[attr=blah.dee#foo*yay]")
Причина, по которой я задаю этот вопрос, заключается в том, что я работаю с веб-сайтом, на котором, как оказалось, есть несколько действительно неприятных селекторов.И у меня нет контроля над сайтом, поэтому я не могу изменить селекторы, чтобы с ними было удобнее работать.
СПАСИБО !!