$ .on,当href属性为空时,单击不起作用

时间:2015-06-01 15:27:25

标签: javascript jquery href

<a href="">i am a link</a>
<script src="jquery.js"></script>
<script>
    $("a").on('click', function(){
        console.log("the a link is clicked")
    })
</script>
当我点击链接时,

不会打印任何内容。

然而,当我使用href符号初始化hash时,它可以正常工作。

这有效,

<a href="#">i am a link</a>
<script src="jquery.js"></script>
<script>
    $("a").on('click', function(){
        console.log("the a link is clicked")
    })
</script>

1 个答案:

答案 0 :(得分:5)

您的第一个代码示例可以正常工作,您只需要阻止点击链接时发生的页面刷新:

<a href="">i am a link</a>
<script src="jquery.js"></script>
<script>
    $("a").on('click', function(e){
        e.preventDefault(); // < stop the link behaviour
        console.log("the a link is clicked")
    })
</script>

也就是说,最好始终在href参数中包含一个值,即使它只是# - 但如果需要,仍然会使用preventDefault()