Более быстрый селектор jquery для нахождения количества элементов TD - PullRequest
0 голосов
/ 01 апреля 2010

У меня есть таблица, где в каждой строке 13 элементов TD. Я хочу показать и скрыть первые 10 из них, когда я переключаю ссылку. Все эти 10 элементов TD имеют идентификаторы с префиксом «foo» и двухзначным номером для его позиции (например, «foo01»). Какой самый быстрый способ выбрать их по всей таблице?

$("td:nth-child(-n+10)")

или

$("td[id^=foo]")

или стоит объединить все идентификаторы?

$("#foo01, #foo02, #foo03, #foo04, #foo05, #foo06, #foo07, #foo08, #foo09, #foo10")

Есть ли другой подход, который я тоже должен рассмотреть?

Ответы [ 2 ]

1 голос
/ 01 апреля 2010

Что если вы добавите их всех в один класс? Или вы можете использовать «rel», может быть ... просто думая, что наличие одного общего идентификатора может ускорить процесс.

1 голос
/ 01 апреля 2010

Используйте это

 $("td:lt(10)")

Я говорю это потому, что у вас есть идентификаторы, которые должны быть уникальными, что означает одну строку.

Вы также можете использовать $("tr").find("td:lt(10)") длянесколько строк ... но сохраняйте эти идентификаторы уникальными.

Но имейте в виду, здесь скорость селектора будет иметь минимальное влияние здесь.Перерисовка таблицы означает большое количество вычислений перекомпоновки в браузере (насколько широко этот столбец основан на всем тексте, что переносится и т. Д.). Это то, что съест ваше время в этой операции, селектор не окажет значительного влияния на производительность, поскольку подавляющее большинство времени на его обработку будет потрачено после его запуска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...