Я было дело изучал jQuery изнутри. Дело в том что jQuery испульзкет движок селекторов Sizzle, который является второстепенным, если стандартный встроенный в браузер querySelectorAll не выдает результатов, то jQuery запускает этот самый Sizzle, по спецификации querySelectorAll не поддерживает обычный first и многие другие псевдоклассы что юзает jQuery поэтому при попытки отдать querySelectorAll подобный запрос приводит к пустому результату, так как селектор ошибочен, что в свою очередь заставляет jQuery запускать внутренний поиск.