Учитывая этот HTML:
<div class="OpenIDSelector">some text</div>
Почему этот селектор JQuery соответствует ему на некоторых браузерах и некоторых страницах, но не на других?
$('.OpenIdSelector')
Примечание: Я столкнулся с этой проблемой и решил ее сам, но это было раздражающим, и я уже не нашел его на StackOverflow, таким образом, я отправляю ее как пару Вопросов и ответов, таким образом, кто-то еще не потратит впустую час как, я сделал.
Оказывается, селектор классов JQuery использует новый метод javascript getElementsByClassName , если браузер поддерживает его. Этот метод нечувствителен к регистру на страницах режима quirks и чувствителен к регистру на страницах non-quirksmode (также называемых стандартами). Конечно, обычно очевидно, что случаи разные, но когда текст застревает в середине длинного сложного селектора, его трудно разглядеть. По-видимому, существует множество чувствительных к регистру различий между стандартами и причудами, на которые следует обращать внимание.
Мораль истории: сопоставьте регистр всего в вашем HTML (имена элементов, классы CSS и т. Д.), Потому что вы никогда не знаете, когда изменение браузера, стандарта или библиотеки может опровергнуть ваше предположение о нечувствительность к регистру.