JS阻止默认行为

如果事件可取消,则取消该事件,而不停止事件的进一步传播。

语法

event.preventDefault();

案例

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>event.preventDefault()</title>
 6 </head>
 7 <body>
 8     <p>请点击复选框控件</p>
 9     <form>
10         <label for="id-checkbox">Checkbox</label>
11         <input type="checkbox" id="id-checkbox" name="checkbox" />
12     </form>
13     <script>
14         document.querySelector("#id-checkbox").addEventListener("click", function(event){
15             event.preventDefault();  //阻止该复选框被勾选
16             setTimeout(function (){
17               alert("preventDefault会阻止该复选框被勾选.")
18             },0)
19         }, false);
20     </script>
21 </body>
22 </html>

备注

在事件触发后的任何阶段调用preventDefault方法来取消该事件,意味着该事件的所有默认动作都不会发生.preventDefault 方法不会阻止该事件的进一步冒泡. event.stopPropagation方法才有这样的功能.

原文地址:https://www.cnblogs.com/NirvanaCn/p/8328700.html