阻止事件的默认操作

博客讨论了在JavaScript中如何使用`event.preventDefault()`方法来阻止事件的默认行为,如链接跳转、表单提交等。它解释了为什么返回false在某些情况下不适用,并提供了内联属性和事件处理程序中的示例。文章强调了这种方法在验证表单、防止文件自动打开等场景的重要性。
摘要由CSDN通过智能技术生成

对于 on<event> 返回 false

ele.onclick = function(e) {
    // Do some thing

    return false
}

如果您使用内联属性,则情况相同:

<form>
    <button type="submit" onclick="return false">Click</button>
</form>

我不推荐这种方法,因为

  • 返回 false 没有意义
  • 它不适用于 addEventListener() 方法

使用 preventDefault() 方法

此方法适用于内联属性

<button type="submit" onclick="event.preventDefault()">Click</button>

和事件处理程序:

ele.onclick = function(e) {
    e.preventDefault()
    // ...
}

ele.addEventListener('click', function(e) {
    e.preventDefault()
    // ...
})

用例

  • 单击链接时不要跟随它。我们在创建选项卡时经常使用此选项。
  • 单击表单的提交按钮时不要提交表单。例如,我们希望首先验证表单。
  • 将文件拖放到给定区域时,而不打开文件或下载文件。
  • 在元素上单击鼠标右键时显示自定义关联菜单等。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值