Редактировать : несмотря на мои исследования, я сначала сделал совершенно неправильный вывод . Ответ обновлен: O (kudo, перейдите к @ThiagoSantos, у которого был правильный ответ с самого начала: D).
Документация jQuery ": text" состояния:
Поскольку: text является расширением jQuery и не является частью спецификации CSS, запросы, использующие: text, не могут воспользоваться преимуществами повышения производительности, обеспечиваемыми собственным методом DOM querySelectorAll ().
Если вы погрузитесь в источник 1.7.1 , кажется, этот селектор реализован как:
text: function( elem ) {
var attr = elem.getAttribute( "type" ), type = elem.type;
// IE6 and 7 will map elem.type to 'text' for new HTML5 types (search, etc)
// use getAttribute instead to test this case
return elem.nodeName.toLowerCase() === "input" && "text" === type && ( attr === type || attr === null );
}
Для <input type="tEXt" />
значение attr
оказывается "tEXt", что не соответствует type
. К моему большому удивлению, тогда:
Обновленный ответ должен быть: : текст чувствителен к регистру