当我想防止我使用的锚标签的默认行为时
<a href="javascript:void(0);">link</a>
Run Code Online (Sandbox Code Playgroud)
哪个是最有效的解决方案?
kar*_*m79 29
优雅降级解决方案的一个示例:
<a href="no-script.html" id="myLink">link</a>
<script>
document.getElementById("myLink").onclick = function() {
// do things, and then
return false;
};
</script>
Run Code Online (Sandbox Code Playgroud)
演示:http://jsfiddle.net/karim79/PkgWL/1/
Cha*_*let 27
这是一个很好的方法,如果你使用jquery,你也可以这样做:
<a id="link" href="javascript:void(0)">link</a>
<script type="text/javascript">
$("#link").click(function(ev) {
ev.preventDefault();
});
</script>
Run Code Online (Sandbox Code Playgroud)
preventDefault也可用于阻止提交表单
Sha*_*ard 13
你也可以这样:
<a href="#" onclick="return false;">link</a>
Run Code Online (Sandbox Code Playgroud)
如果您从不希望浏览器在任何地方关注链接,我会说您拥有的是最简单,最安全的解决方案.
当然,有很多其他解决方案可以应用于javascript,但大多数其他方式可能会失败
return false;
或者preventDefault
可能位于语句末尾的错误,并且浏览器将按照链接进行操作(如果只是)#
.我知道这是一个旧线程,但这是我经常使用的
<a href="javascript:void(0);">link</a>
<a href="javascript:;">link</a>
归档时间: |
|
查看次数: |
52017 次 |
最近记录: |