-1

当我打印出 HTMLa标记的对象时:我看到了

href: "http://www.example.com/page.html#abc.1.2"
hash: "#abc.1.2"

当我做

$(document.body).on('click',"a",function(event){ 
    console.log( $(this).attr("href") );
});

我只得到"#abc.1.2",这是哈希值,而不是整个 URL。为什么会这样,我怎样才能获得整个 URL?

4

3 回答 3

4

因为你得到的是属性的值而不是属性。

使用.prop而不是.attr.

于 2013-09-21T16:49:02.973 回答
2

不确定您在做什么,但这会返回 HREF 以及主机名和协议

<a href="#abc.1.2">Link</a>

$(document).on('click',"a",function(event){ 
    console.log( this.href );
    return false;
});
于 2013-09-21T16:47:16.263 回答
0

您无需this使用 jQuery 进行包装即可返回公共属性。改用this.href.

$(document).on('click',"a",function(e){ 
    e.preventDefault();
    console.log(this.href)
});
于 2013-09-21T16:54:55.567 回答