小码哥的IT人生

preventDefault() 事件方法

JavaScript基础 2022-06-08 12:06:28小码哥的IT人生shichen

preventDefault() 事件方法

实例

防止链接打开 URL:

document.getElementById("myAnchor").addEventListener("click", function(event){
  event.preventDefault()
});

完整实例:

<!DOCTYPE html>
<html>
<body>
<a id="myAnchor" href="http://www.phpcodeweb.com/">访问 phpcodeweb.com.cn</a>
<p>preventDefault() 方法将阻止上面的链接跟随 URL。</p>
<script>
document.getElementById("myAnchor").addEventListener("click", function(event){
  event.preventDefault()
});
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

页面下方有更多 TIY 实例。

定义和用法

如果事件是可取消的,则 preventDefault() 方法会取消该事件,这意味着属于该事件的默认操作将不会发生。

举例,在以下情况下有用:

  1. 单击“提交”按钮,阻止其提交表单
  2. 单击链接,防止链接跟随 URL

注释:并非所有活动都可以取消。请使用 cancelable 属性 来确定事件是否可取消。

注释:preventDefault() 方法不会阻止事件通过 DOM 进一步传播。请使用 stopPropagation() 方法来解决。

浏览器支持

表格中的数字注明了完全支持该方法的首个浏览器版本。

方法 Chrome IE Firefox Safari Opera
preventDefault() 支持 9.0 支持 支持 支持

语法

event.preventDefault()

参数

技术细节

返回值: 无返回值。
DOM 版本: DOM Level 2 Events

更多实例

防止复选框的默认操作:

document.getElementById("myCheckbox").addEventListener("click", function(event){
  event.preventDefault()
});

完整实例:

<!DOCTYPE html>
<html>
<body>
请尝试选中此框:<input type="checkbox" id="myCheckbox">
<p>切换复选框是单击复选框的默认操作。 preventDefault() 方法可以防止这种情况发生。</p>
<script>
document.getElementById("myCheckbox").addEventListener("click", function(event){
  event.preventDefault()
});
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024