Улучшить неэффективный селектор jQuery
В IntelliJ, если я использую селектор jQuery, например:
$('#roleField option').each(function() {
// impl omitted
});
Селектор подсвечивается предложением о том, что я должен
разделители селекторов по умолчанию, которые предварительно снабжены селектором идентификаторов
что такое IntelliJ, предполагающее, что я должен заменить селектор выше?
Ответы
Ответ 1
Из документации jquery этот метод не будет проходить через механизм сектора Sizzle:
$('#roleField option').each(function() {
// No Sizzle
});
Где это будет:
$('#roleField').find('option') // Sizzle!
Посмотрите раздел селекторов идентификаторов ID здесь. Следовательно, второй метод будет быстрее первого.
Ответ 2
Попробуйте использовать .find()
здесь:
$('#roleField').find('option').each(function() {
// impl omitted
});
Ваше предупреждение похоже на эффективность селектора.
Связанный поток