Использование :not
и .not()
для выбора и фильтрации " Live Demo
:not(selector)
делает именно это, и поставляется в нескольких стилях. Вы можете использовать селектор или метод . Ниже приведен пример использования селектора:
$("#container :not(select)");
Это будет соответствовать любому дочернему элементу в #container
, который является , а не a <select>
элементом. Тогда у нас есть метод fashion исключения, который называется тем же именем, но должен запускаться по-другому:
$("#container").children().not("select");
Это работает против children
соответствующих элементов. В этом случае .not
действует как фильтр. Который подводит меня к следующему примеру, используя .filter()
, чтобы получить желаемые результаты. С помощью этого метода мы можем предоставить нашу собственную пользовательскую функцию, чтобы покопаться в результатах и выбрать те, которые мы хотим:
Использование .filter()
для фильтрации соответствующих элементов " Live Demo
$( "#container" ).children().filter( isNotSELECT ).fadeTo( "slow", .5 );
function isNotSELECT () {
// Returns TRUE if element is NOT select
return !$(this).is("select");
}
В этом примере мы выбираем все дочерние элементы #container
, а затем пропускаем их через фильтр, который мы определили, называемый isNotSelect. В нашем фильтре мы возвращаем либо true
, либо false
для каждого элемента. Если мы вернем true
, этот элемент будет возвращен в набор результатов. Если мы вернем false
, этот элемент будет удален из набора результатов. Мы спрашиваем, является ли элемент не выбором. Это вернет false
для всех выбранных элементов, удалив их из нашей коллекции.