首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery nth-child()在第二个li中插入css类

jQuery nth-child()在第二个li中插入css类
EN

Stack Overflow用户
提问于 2016-12-07 10:40:19
回答 3查看 1.5K关注 0票数 1

我想在第二个.tech中插入类<li>,在下面的代码中有什么问题?

html:

代码语言:javascript
运行
复制
<div class="menu">
  <nav class="sidebar">
    <div class="client">
      <div class="client-open">
        <ul class="sidebar-nav">
          <li>link1</li>
          <li>link 2</li>
        </ul>
      </div>
    </div>
  </nav>
</div>

jquery:

代码语言:javascript
运行
复制
$(function() {
    $( ".sidebar-nav ul li:nth-child(2)" ).addClass('tech');
});
EN

回答 3

Stack Overflow用户

发布于 2016-12-07 10:41:32

.sidebar-nav是ul,所以在.sidebar-nav之后不需要选择器中的ul

代码语言:javascript
运行
复制
$( ".sidebar-nav li:nth-child(2)" ).addClass('tech');

您可以在类之前添加它,以指定该类属于ul

代码语言:javascript
运行
复制
$( "ul.sidebar-nav li:nth-child(2)" ).addClass('tech');

注意:由于使用jquery,所以可以使用:eq() (基于零的)选择器来代替:

代码语言:javascript
运行
复制
$( "ul.sidebar-nav li:eq(1)" ).addClass('tech');

希望这能有所帮助。

代码语言:javascript
运行
复制
$(function() {
  $( "ul.sidebar-nav li:eq(1)" ).addClass('tech');
});
代码语言:javascript
运行
复制
.tech{
  color: green;
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="menu">
  <nav class="sidebar">
    <div class="client">
      <div class="client-open">
        <ul class="sidebar-nav">
          <li>link1</li>
          <li>link 2</li>
        </ul>
      </div>
    </div>
  </nav>
</div>

票数 1
EN

Stack Overflow用户

发布于 2016-12-07 10:41:51

  1. .sidebar-nav ul更改为.sidebar-nav,因为类.sidebar-nav已经是ul,您的代码所做的是在类.sidebar-nav中搜索ul,这也是为什么不添加类的原因。

您可以将选择器更新为:

代码语言:javascript
运行
复制
$(".sidebar-nav li:nth-child(2)").addClass('tech');
// or
$("ul.sidebar-nav li:nth-child(2)").addClass('tech');

代码语言:javascript
运行
复制
$(".sidebar-nav li:nth-child(2)").addClass('tech');
代码语言:javascript
运行
复制
.tech {
  color: red
}
代码语言:javascript
运行
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="menu">
  <nav class="sidebar">
    <div class="client">
      <div class="client-open">
        <ul class="sidebar-nav">
          <li>link1</li>
          <li>link 2</li>
        </ul>
      </div>
    </div>
  </nav>
</div>

票数 0
EN

Stack Overflow用户

发布于 2016-12-07 10:42:48

它应该是:

代码语言:javascript
运行
复制
$(function() {
 $( "ul.sidebar-nav li:eq(1)").addClass('tech');
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41015258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档