Я хотел бы написать JQuery заявления типа:Использование: нет (: нет()) для эмуляции (гипотетический): есть() селектор в JQuery
$(".someparentcontainer input[type=checkbox]:is(.foo, .bar, .xyz)")
В качестве краткого обозначения:
$(".someparentcontainer input[type=checkbox].foo, .someparentcontainer input[type=checkbox].bar, .someparentcontainer input[type=checkbox].xyz)")
Поскольку JQuery не поддерживает (к моему знанию): есть() селектор я придумал следующий обходной путь:
$(".someparentcontainer input[type=checkbox]:not(:not(.foo, .bar, .xyz))")
Я понимаю, что у него есть его недостатки с точки зрения производительности, если .someparentcontainer имеет тонну дочерних элементов, но он работает очень хорошо для небольших домиков.
Есть ли какие-нибудь подводные камни, которые мне могут не хватать здесь? Любые сценарии, в которых эта техника может потерпеть неудачу?
Вы можете создать свой собственный псевдоселектор: https://jsfiddle.net/mLn1wbej/ –