【问题标题】:How do I add a class to a link in a bootstrap's popover?如何将类添加到引导程序弹出窗口中的链接?
【发布时间】:2015-05-22 00:52:17
【问题描述】:
      %ul.nav.navbar-nav.navbar-right
        %li
          %a{:href => "#", "data-content" => "<a href='#' class='c'>New</a><br />Outbound<br/>Inbound<br/>", "data-toggle" => "popover", "data-placement" => "bottom", "data-trigger" => "focus", "data-html" => "true","data-animation" => "true"} 

上面的代码 sn-p 来自导航栏,如您所知,它在 HAML 中。

如果我只是像这样:class =&gt; 'c' 添加class c,它可以工作,但它会影响整个弹出框。

我希望它现在至少可以在 New 锚点上工作。

如何让它只在New 上工作?

谢谢。

编辑了 jquery 代码,因为这会分散问题的注意力。我只是想知道如何能够将类添加到引导程序弹出窗口中的特定链接

编辑 2

        $(document).ready(function(){
            $('.testing4').hide();
                $('.navbar').on('click', 'a.c' function() 
                {
                    $('.testing3, .testing4').toggle()
                    return false;
                }
            );
        });

【问题讨论】:

  • 我不确定我是否理解。尝试添加'return false;'在 $('').toggle(); 之后
  • @AramilRey,嗯,我猜添加return false 会阻止它工作?这不是这里的问题。问题是我试图在引导程序的弹出窗口中添加一个class cNew 链接。

标签: jquery ruby-on-rails twitter-bootstrap haml


【解决方案1】:

所以我冒昧地假设您有一个事件侦听器在与c 类的链接上收听click?如果是这样,您的侦听器没有被触发的原因是因为当您第一次调用它时,不会生成弹出框。我建议将event listener 添加到父元素中。即

$('.navbar-nav').on('click', 'a.c', function () {
  // do stuff here
});

您依靠事件委托将该事件冒泡到.navbar-nav

【讨论】:

  • 嘿,几分钟前才看到你的回答。我试过了,但没有用。我已经把它放在上面的帖子里了。我真的不明白为什么如果将 c 类放在整体弹出框中,它会起作用,但是当我尝试将它放在一行中时,即 New,它不起作用。跨度>
  • @devkarou,别管我之前说的。原来你的答案确实有效。我只是无意中在“a.c”和函数之间遗漏了一个逗号。哎呀!谢谢您的回答。它确实有效!
  • 非常感谢!根据您所说,我终于弄清楚了如何渲染内容,尽管略有不同,但它出现了!谢谢你。谢谢你。谢谢你。这是参考我从那时起删除的另一篇文章。但是非常感谢!我今晚真的需要解决它。
【解决方案2】:

那么,点击功能可以正常工作,但是a里面需要有'.c'?

也许

$('li > a').find('a').addClass('c');

或更改内部的href并使用:

$('a[href^="anotherlink"]').addClass('c');

是这个问题吗?

【讨论】:

  • 感谢您的回答。欣赏它。但是我最初在链接中添加'class c 的原因是它会触发我最初发布的jquery sn-p。由于某种原因,New 的内部a 中的“c 类”不起作用。这就是这里的问题。试图让 class c 工作,以便它可以触发 jquery。
猜你喜欢
  • 2021-01-02
  • 2021-10-06
  • 1970-01-01
  • 1970-01-01
  • 2018-05-10
  • 1970-01-01
  • 1970-01-01
  • 2020-12-15
  • 1970-01-01
相关资源
最近更新 更多