我尝试用本机方式替换jQuery的.not()
函数,不幸的是,我的document.querySelectorAll
用例无法正常工作。
这是我要实现的-将jQuery选择器更改为普通JS:
$('#someID').not('.classNameOne > div, .classNameTwo > div, div[class*="-something"] > div')
我尝试使用简单且简单的此选择器:
document.querySelectorAll("#someID:not(.classNameOne > div, .classNameTwo > div, div[class*="-something"] > div)");
这将引发此错误:
Uncaught DOMException: Failed to execute 'querySelectorAll' on 'Document': '#someID:not(.classNameOne > div, .classNameTwo > div, div[class*="-something"] > div)' is not a valid selector.
at <anonymous>:1:10
你们中的一个人知道替代此jQuery函数的更好方法吗?
谢谢!
答案 0 :(得分:1)
尝试一下
document.querySelectorAll("#someID:not(.classNameOne) >
div, .classNameTwo > div, div[class*=-something] > div ");