【问题标题】:$(".navbar.navbar-inverse").click() works but $(".navbar .navbar-inverse").click() does not?$(".navbar.navbar-inverse").click() 有效,但 $(".navbar .navbar-inverse").click() 无效?
【发布时间】:2016-11-30 09:53:47
【问题描述】:

我仍在学习网页设计的技巧,但我无法理解一些事情的工作原理......

我创建了一个函数来切换导航栏标题背景颜色,我发现以下内容是正确的,但不确定原因:

作品:

$(".navbar.navbar-inverse".click(function() {
    $(this).toggleClass("highlight");
});

不起作用(空格 btw navbar 和 navbar-inverse):

$(".navbar .navbar-inverse".click(function() {
        $(this).toggleClass("highlight");
    });

同样,如果我将此功能应用于导航栏切换,则相反:

作品(空间 btw navbar 和 navbar-toggle):

$(".navbar .navbar-toggle").click(function() {
              $(".navbar-inverse").toggleClass("highlight");
          });

不起作用:

$(".navbar.navbar-toggle").click(function() {
                  $(".navbar-inverse").toggleClass("highlight");
              });

奖金...

无法使用此方法更改导航栏切换背景:

不起作用:

$(".navbar .navbar-toggle").click(function() {
              $(this).toggleClass("highlight");
          });

【问题讨论】:

    标签: javascript jquery twitter-bootstrap


    【解决方案1】:

    第一个引用具有类navbarnavbar-toggle 的元素,第二个引用.navbar-toggle,它是.navbar 的后代。这就是放置空间的作用:)

    【讨论】:

    • 谢谢!关于为什么最后一点不起作用的任何建议 - 无法使用描述的方法更改导航栏切换按钮的背景颜色?或者,您是否需要更多代码?
    • @Nate 尝试删除空间?
    • 似乎不起作用。如果有帮助,这是我的 jsfiddle:jsfiddle.net/m9m9q8mo/2
    • @Nate 无论如何,这是一个单独的问题。你可以再问一个问题。
    【解决方案2】:

    this answer 所示,您可以使用“navbar.navbar-inverse”选择包含特定类(“navbar-inverse”)的元素(例如,命名为“navbar”)。如果你在这两者之间添加一个空格,它基本上意味着

    选择所有具有类 navbar-inverse 并且是导航栏子级的元素

    干杯

    【讨论】:

    • 答案链接很有帮助,谢谢!不过,为了简洁起见,标记 nicael 是正确的。
    猜你喜欢
    • 2018-03-05
    • 2018-03-28
    • 1970-01-01
    • 2017-07-06
    • 2020-02-15
    • 2012-10-05
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多