【问题标题】:jQuery to list all anchors on page?jQuery列出页面上的所有锚点?
【发布时间】:2014-03-31 19:01:43
【问题描述】:

如何请求单个 HTML 文档上的所有锚点?

$('.notfront article a[href!=http]').attr('href')

只返回第一个匹配项,

$('.notfront article a').attr('href').match(/^#\w+/g)

也只返回第一个元素。

【问题讨论】:

  • 你想要达到什么目的?
  • 无论你的选择器是什么,.attr 总是只返回第一个的值。任何 jquery getter 方法也是如此。如果没有更多关于你想要做什么的信息,除了说你不能那样做之外,真的不可能回答这个问题。
  • 那么你只是想返回第一个不是外部超链接的锚元素吗?
  • 是的,我需要收集页面上存在的所有锚点。目录之类的东西
  • 我希望有人可以解释下注:(

标签: jquery html anchor match


【解决方案1】:
function getAnchorElements(){
    var elems = [];
    $('.notfront article a').each(function(){
        if($(this).attr('href').match(/^#\w+/g))
            elems.push(this);
    });
    return elems;
}

【讨论】:

    【解决方案2】:

    这应该在没有 foreach 循环的情况下选择它们。

    $(".notfront article a[href^='#']" ).
    

    【讨论】:

    • 但没有这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多