JS、阻止 a 标签的默认点击事件,阻止默认的所有事件

曾经终败给现在 2022-12-28 07:17 403阅读 0赞

JS、阻止 a 标签的默认点击事件,阻止默认的所有事件

1 . javascript:void(0) 空处理

缺点:当超链接有target="_blank"属性时,点击后任然会跳出空白页面

  1. <a href="https://www.baidu.com/" target="_blank">超链接1</a>
  2. <a href="javascript:void(0);">超链接2</a>
  3. <a href="javascript:void(0);" target="_blank">超链接3</a>

2 . 重写 onclick

可以解决默认点击事件,也可以保证target="_blank"时,不跳出空白页

  1. <a href="https://www.baidu.com/" target="_blank">超链接1</a>
  2. <a href="https://www.baidu.com/" target="_blank" onclick="return false">超链接2</a>

如果你是vue等之类的框架,你可以这样写
使用ref获取,dom再对dom进行操作

  1. // 阻止a标签默认的点击事件
  2. this.$refs.productIntroduction[0].onclick = function () {
  3. return false;
  4. };

3 . css属性中设置 pointer-events: none

可以阻止a标签的所有事件行为,包括点击事件,hoveractived等…
(这个特性有时是优点,有时也是缺点)

  1. <head>
  2. <meta charset="UTF-8">
  3. <title></title>
  4. <script src="https://cdn.jsdelivr.net/npm/vue"></script>
  5. <style type="text/css">
  6. .aWrap {
  7. pointer-events: none
  8. }
  9. </style>
  10. </head>
  11. <body>
  12. <a class="aWrap" href="https://www.baidu.com/" target="_blank">超链接1</a>
  13. </body>

发表评论

表情:
评论列表 (有 0 条评论,403人围观)

还没有评论,来说两句吧...

相关阅读