【问题标题】:Get element by href in jquery not working?在jquery中通过href获取元素不起作用?
【发布时间】:2013-02-02 10:11:45
【问题描述】:

我想通过单击 Show 将类 (d_select) 添加到 href 为“#tut”的标签中。

但是当我点击时,什么也没有发生。这是我的代码:

 <a class="show"><span>Show!</span></a>       

            <ul class="tab_cm">
                <li><a href="#details">Details</a></li>
                <li><a href="#feed">Feedback</a></li>
                <li><a href="#tut">Tutorial</a></li>
                <li><a href="#map">Map</a></li>
            </ul>

<script>
$(function(){
    $(".show").click(function(event){
    event.preventDefault();
    $("ul.tab_cm").find('a[href="#tut"]').addClass("d_select");
    });
});
</script>

我英语不好,很抱歉!

【问题讨论】:

  • 您的代码在这里可以正常工作:jsfiddle.net/48aee 也许您的类的 css 规则不够具体
  • 我也测试了代码,它是正确的代码,但是您的类可能被 a:link css 规则覆盖。在 Google Chrome 中使用 F12,找到元素,然后查看 CSS 类规则,看看哪个优先于 D-select。
  • 我的班级名称有问题!非常感谢!

标签: jquery href


【解决方案1】:

试试$("ul.tab_cm").find('a[href="\\#tut"]').addClass("d_select");

\\ 将在用作选择器的一部分时转义具有特殊 CSS 含义的字符...尽管 JQuery 似乎足够聪明,知道属性引用中的 # 无论如何都是文字,所以这应该'不是必需的。

【讨论】:

  • @Boulevard 也许做一个回答,展示你做了什么以及你如何改变它以帮助其他做同样事情的人。
  • @Plynx 在引号中无需转义#
猜你喜欢
  • 2011-03-07
  • 2011-06-05
  • 2018-01-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-22
  • 2014-03-03
相关资源
最近更新 更多