$(":not(selector)") in plain/ vanilla javascript?
$(":not(selector)") in plain/ vanilla javascript?
如何在纯javascript中编写$(":not(selector)")
?
var links = $('a:not(.not-lightbox-item a)', this);
HTML: <div id="links">
<div class="not-lightbox-item">
<a href="projects.html" class="button-back">
<span class="glyphicon glyphicon-hand-left glyphicon-circle-arrow-leftx" title="Back"></span>
</a>
<h2 class="heading item-heading">(Title) Ways of Something</h2>
<p>Lorem ipsum dolor sit amet <a href="#">Excepteur sint occaecat</a> cupidatat non proident</p>
</div>
<a href="images/banana.jpg" title="Banana">
<img src="images/thumbnails/banana.jpg" alt="Banana">
</a>
<a href="images/apple.jpg" title="Apple">
<img src="images/thumbnails/apple.jpg" alt="Apple">
</a>
<a href="images/orange.jpg" title="Orange">
<img src="images/thumbnails/orange.jpg" alt="Orange">
</a>
</div>
任何想法?
使用document.querySelector
或document.querySelectorAll
作为解决方案:
//returns first element matching
document.querySelector("a:not(.not-lightbox-item a)");
//returns all elements matching
document.querySelectorAll("a:not(.not-lightbox-item a)");
然而@George Katsanos是对的,使用像.lightbox-item
这样的类比像a:not(.not-lightbox-item a)
这样的双重否定更清晰(也可能更快)
为什么不在纯CSS中切换有选择器的类呢?
.className {
color: blue;
}
var myitem = document.querySelector('.item')
myitem.classList.toggle('className');
如果我不能控制HTML,我就会使用:
相关文章:
- 铬:“;未捕获的语法错误:意外的标记:"
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- JS表单提交"无法使用Chrome数据保护程序加载此页面.尝试重新加载页面.调试信息:POST CISmtuK
- 检测电话窃听,即:<a href="电话:xxx">在UIWebview上
- Vanilla JS通过引用移除数组元素
- 使用“+="操作人员
- //而不是在src=“”上使用http://"属性
- "未捕获的语法错误:意外的标记}"
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- "实例范围”;TypeScript类的getter/setter
- Javascript复选框函数:;缺少:在属性id之后"
- "“;变量未引用正确的对象
- "日期“;AJAX请求返回的类型值未定义
- 得到"TypeError:无法读取属性'filename'未定义的“;调用“npm start
- Soundcloud api"未捕获的类型错误:无法读取属性'uri'“未定义”;
- "工具提示"jQuery插件坏了
- "锻造;React中的表达式
- 图像可以从源<img src=""/>.TEXT可以在没有javascript的情况下从外部
- 如何提取“;href"最近列表项中的属性值
- CKEditor如何允许href="javascript:void(0)"在小部件中