jquery - 如何使用元素查找特定ID
问题描述
我有几个用 html 创建的图像 div。html代码看起来像这样
<ul class="menu controls">
<li class="selected"><a href="#vsetko">Všetko</a></li>
<li><a href="#dota">Dota 2</a></li>
<li><a href="#hunt">Hunt: Showdown</a></li>
<li><a href="#wow">World of Warcraft</a></li>
</ul>
假设我想隐藏#dota id,所以我尝试通过 jquery 来实现,但我似乎无法让它工作。
$("li").find("#dota").hide();
我对此很陌生,请您指出我的某个地方并告诉我我做错了什么?
解决方案
道歉,忽略我的评论,我不得不进一步查看代码,看看你想要完成什么。考虑以下示例。
$(function() {
$("li > a[href='#dota']").hide();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul class="menu controls">
<li class="selected"><a href="#vsetko">Všetko</a></li>
<li><a href="#dota">Dota 2</a></li>
<li><a href="#hunt">Hunt: Showdown</a></li>
<li><a href="#wow">World of Warcraft</a></li>
</ul>
您不是要选择 ID 为 的项目dota
,而是要选择一个引用#dota
为锚点的链接。因此,在这种情况下,您可以使用元素属性选择器选择项目。
$("li > a[href='#dota']")
如果我们在这里分解选择器,我们有:
li
- 元素选择器https://api.jquery.com/element-selector/>
- 父 > 子选择器https://api.jquery.com/child-selector/a[href='#dota']
- 元素属性选择器https://api.jquery.com/attribute-equals-selector/
把它们放在一起,我们就可以隐藏一个特定的元素。
推荐阅读
- javascript - 找不到 DOM 元素
- virtocommerce - 换页后购物车显示为空
- angular - Angular 6拦截器无法处理响应
- python - 在 Logistic 回归中更改随机状态不会改变结果
- c# - ASP.NET MVC + Identity implementation // 与模型返回的 ID 与可见的 ID 不同
- ios - 如何使用 Alamofire 和依赖注入构建适合测试的网络层?
- javascript - lightSlider - “$ slide.on 不是函数” - “$ el.goToNextSlide 不是函数”
- css - 如何使内部div居中?
- javascript - 在 React 应用程序中呈现 HTML 电子邮件的最佳方式
- firebase - Firebase 列表视图到视频路径