Я не могу говорить об аспекте элегантности, но аспект производительности здесь действительно может иметь огромное значение.
Похоже, из набора тестов JavaScript , что вашоригинальный метод на самом деле является наиболее эффективным, и вопреки гипотезе о том, что принятый ответ связан с селекторами Sizzle, не относящимися к CSS, как правило, на намного менее эффективен, чем селекторы методов.Есть причина для этого.$('.answer')
может использовать собственный браузер getElementsByClass()
без необходимости ручного просмотра результатов.Селектор :first
усложняет это.В этом случае использование селекторов шипения замедляет выбор в 4-5 раз.
Я бы сказал, что при использовании jQuery производительность должна превосходить элегантность, и все доказательства (каждый браузер, который я тестировал до сих пор!), По-видимому, указывают на то, что неэффективное решение OP является самым быстрым и справедливым.
Вот результаты браузеров с большинством тестовых запусков:
(числа - «операций в секунду», поэтому старшие числа быстрее,младшие числа медленнее.)