考虑以下事项:

<div onclick="alert('you clicked the header')" class="header">
  <span onclick="alert('you clicked inside the header');">something inside the header</span>
</div>

我怎样才能让用户点击跨度时,不会触发div的点击事件?

推荐答案

使用event.stopPropagation().

<span onclick="event.stopPropagation(); alert('you clicked inside the header');">something inside the header</span>

对于IE:window.event.cancelBubble = true

<span onclick="window.event.cancelBubble = true; alert('you clicked inside the header');">something inside the header</span>

Javascript相关问答推荐

HTML/JavaScript函数未执行

如何从JavaScript中的公共方法调用私有方法?

Angular 拦截器错误处理删除方法问题

在JavaScript中打开和关闭弹出窗口

设置默认值后动态更新japbox或调色板

使用AJX发送表单后,$_Post看起来为空

GrapeJS -如何保存和加载自定义页面

按下同意按钮与 puppeteer 师

如何在mongoose中链接两个模型?

Mongoose post hook在使用await保存时不返回Postman响应

如何从URL获取令牌?

Prisma具有至少一个值的多对多关系

如何在ASP.NET中使用Google Charts API JavaScript将条形图标签显示为绝对值而不是负值

未定义引用错误:未定义&Quot;而不是&Quot;ReferenceError:在初始化&Quot;之前无法访问';a';

如何创建返回不带`new`关键字的实例的类

Nextjs 13.4 Next-Auth 4.2登录(&Quot;凭据&,{});不工作

如何使用基于promise (非事件emits 器)的方法来传输数据?

如何在和IF语句中使用||和&;&;?

对具有相似属性的对象数组进行分组,并使用串连的值获得结果

构建器模式与参数对象输入