扫码关注官方订阅号
无标题文档 链接1 链接2 链接3
本来问题是为什么在chrome和IE环境下快速点击链接3时会停止a()事件执行(firefox正常),后来看到这个
然后我想验证究竟是不是触发了beforeunload可是不知道该怎么做.(js初学者)。 要是验证是否触发click我还可以在function里打印数字1,可是验证beforeunload是否触发实在想不到思路。如果我给beforeunload添加个事件 那就成了我自己要触发beforeunload事件不能证明是js触发的
业精于勤,荒于嬉;行成于思,毁于随。
MDN里有说,你可以参考下。
被楼下启发了下,既然标准都不推荐那安全起见还是不推荐这么写的;但如果一定要这么写的话,通常href空链接有两种写法:
href = "#",onclick = "clickThis.call(this)",然后记得clickThis里要return false;;
href = "#"
onclick = "clickThis.call(this)"
return false;
href = "javascript: void(0)",然后可以随便用js处理下就好。
href = "javascript: void(0)"
其实关于在 href 使用 JavaScript 本身就是一个错误的行为,我想是开发人员在使用 a 标签时,如果不加上 href 或 name 属性的时候,是无法呈现出链接样式效果。
a
href
name
但是如果写一个 # 的话,又会让页面跳转至顶部。
#
所以,聪明的开发人员就使用的 href="javascript:;" 这种做法,让 a 标签是一个真正有效的链接,同时又防止页面跳至顶部。
href="javascript:;"
然,又有一些聪明的开发人员太懒,觉得反正已经变异写法,不如连 onclick 也不要写,直接写上 href="javascript: return fn();"。
onclick
href="javascript: return fn();"
以上,是我编写的历史。
那么回过头来看,在 href 里面写上javascript其实就是相当于在当前页面的地址栏上输入脚本一样。因此,可以简单的解释,为什么在快速点击链接3时,会看起来像是延迟了一些时间。
当然,不管怎么样,在一个本身就是错误的行为上,寻找正确的答应就是愚者的。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
MDN里有说,你可以参考下。
被楼下启发了下,既然标准都不推荐那安全起见还是不推荐这么写的;但如果一定要这么写的话,通常href空链接有两种写法:
href = "#",onclick = "clickThis.call(this)",然后记得clickThis里要return false;;href = "javascript: void(0)",然后可以随便用js处理下就好。其实关于在 href 使用 JavaScript 本身就是一个错误的行为,我想是开发人员在使用
a标签时,如果不加上href或name属性的时候,是无法呈现出链接样式效果。但是如果写一个
#的话,又会让页面跳转至顶部。所以,聪明的开发人员就使用的
href="javascript:;"这种做法,让a标签是一个真正有效的链接,同时又防止页面跳至顶部。然,又有一些聪明的开发人员太懒,觉得反正已经变异写法,不如连
onclick也不要写,直接写上href="javascript: return fn();"。以上,是我编写的历史。
那么回过头来看,在
href里面写上javascript其实就是相当于在当前页面的地址栏上输入脚本一样。因此,可以简单的解释,为什么在快速点击链接3时,会看起来像是延迟了一些时间。当然,不管怎么样,在一个本身就是错误的行为上,寻找正确的答应就是愚者的。