【问题标题】:How do you change a "a href" link but only certain selected ones in jQuery?您如何更改“a href”链接,但仅更改 jQuery 中选定的某些链接?
【发布时间】:2010-10-08 16:50:32
【问题描述】:

我想更改“a href”链接的行为,但仅限于具有名为 open 的自定义属性的链接

例如

<a href="#" action="open">Link 1</a>
<a href="http://www.google.co.uk/"></a>

我只想改变第一个的行为。所以我做了一个:

jQuery('a[action|=open]').live('click', function(evt) {
      do something;
});

但什么也没发生。选择器选择所有指定的元素,但不执行点击事件。我做错了什么?

【问题讨论】:

  • 附注我试过了,如果我向它添加一个类,它可以工作,但它可以与自定义属性一起工作吗?

标签: jquery click live hyperlink


【解决方案1】:

使用类名更容易做到这一点:

$('a.open').click(function(){...})

<a href="#" class="open">Link 1</a>

【讨论】:

  • +1,更兼容的跨浏览器,并保持标记对规范有效
  • 我同意,虽然我认为 ip 的代码应该可以工作,但在我的测试中确实可以。
  • 奇怪,因为如果我不使用类,它就不起作用。你在 Adam 上测试过什么浏览器?
【解决方案2】:

您的代码可以工作,但并非所有浏览器都支持自定义属性。我建议遵循@Diodeus 的回答,并使用类。这个jsFiddle 在 Chrome 中适用于我,但它可能不适用于所有浏览器。

【讨论】:

    猜你喜欢
    • 2021-09-15
    • 1970-01-01
    • 2015-06-20
    • 2019-01-17
    • 1970-01-01
    • 2012-05-17
    • 2019-09-05
    • 1970-01-01
    • 2017-04-02
    相关资源
    最近更新 更多