javascript - href ="javascript:;"或 href ="javascript:void(0)",区别是什么?

标签 javascript href

我读到了关于href="#"href="javascript:void(0)" 的比较, 我也想知道比较一下

href="javascript:;"或者 href="javascript:void(0)",

ps: 我一直使用 href="javascript:;" 而不是 href="javascript:void(0)", 没有发现任何问题。

最佳答案

使用 javascript:任何一种形式的超链接都是不好的。您的 JavaScript 设计应该不引人注目。

如果您要将事件监听器附加到您的 anchor ,您应该使用 # anchor 甚至是实际的 URL,例如:

<a href="/delete/post/123">delete</a>
...
<script>
jQuery(function($) {
     $('a').on('click', function(event) {
         event.preventDefault();
         // do ajax stuff
     });
});
</script>

这样,旧浏览器(或禁用 JavaScript 的浏览器)将按照常规链接删除项目,而启用 JavaScript 的浏览器将通过 AJAX 执行此操作,这样页面就不必刷新。

如果您的链接真的什么都不做,那么您根本不应该使用 anchor ;只需设计一个 <span>为此目的。

关于javascript - href ="javascript:;"或 href ="javascript:void(0)",区别是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18819329/

相关文章:

javascript - 如何使 html <a target ='_parent' > 指向与 javascript window.opener 相同的位置?

Java检测url

javascript - 打开 Bootstrap 选项卡表单外部页面

javascript - 我如何每天在 JavaScript 中运行一次加载函数?

javascript - 如何使用javascript将一个字段输入值复制到另一字段输入

html - 来自网络的 href 到 "add to calendar"不适用于 Android 6.0+ 上的 native 谷歌日历应用程序

href - <a href ="#"class ="view"> 是什么意思?

javascript - 检测外部 URL 的最快方法

javascript - 尝试将当前月份编号转换为当前月份名称时出现 "Maximum call stack size exceeded"错误

javascript - 数据键函数过滤器始终返回第一个元素