javascript:void(0)或onclick =" return false"对于< a> - 哪个更好?

问题描述:

有一个基于javascript的界面 - 所以我不需要支持没有javascript的工作。

There is a javascript-based interface - so I need not to support work without javascript.

我有一个

<a>Something</a>

JS代码的元素,它绑定点击事件 - 所以,我不希望页面重新加载后用户点击。

elements with JS code, which binds on click event - so, I don't want page reload after user's click.

哪种方式更好?

1. <a href="javascript:void(0)">Something</a>
2. <a href="#" onclick="return false;">Something</a>

每种方法有哪些优点和缺点?

What advantages and disadvantages of each method?

两者都是糟糕的选择。演示文稿不应与内容混在一起。这意味着没有 javascript: URI,绝对没有 onclick 属性。

Both are poor choices. Presentation shouldn't mix with content. That means no javascript: URIs, and definitely no onclick attributes.

做到这一点的方法:

<a id="myLink">Something</a>
<script>
    function myFunction(...) { ... }
    document.getElementById('myLink').addEventListener('click', myFunction, false);
</script>