Skip to main content
Svelte 基础
介绍
响应式
属性
逻辑
事件
绑定
类和样式
Actions
过渡动画
Svelte 进阶
高级响应性
复用内容
Motion
高级绑定
高级过渡效果
Context API
特殊元素
<script module>
后续步骤
SvelteKit 基础
介绍
路由
加载数据
请求头和 Cookie
共享模块
表单
API 路由
$app/state
错误和重定向
SvelteKit 进阶
钩子函数
页面选项
链接选项
高级路由
高级加载
环境变量
结论

通常情况下,事件处理程序在冒泡阶段运行。在这个例子中,注意当你在 <input> 中输入内容时会发生什么 —— 内部处理程序首先运行,因为事件从目标元素’冒泡’到文档,然后是外部处理程序。

有时候,你可能希望处理器在捕获阶段运行。只需在事件名称后面添加capture

App
<div onkeydowncapture={(e) => alert(`<div> ${e.key}`)} role="presentation">
	<input onkeydowncapture={(e) => alert(`<input> ${e.key}`)} />
</div>

现在,相对顺序被颠倒了。如果对于给定的事件同时存在捕获和非捕获处理程序,捕获处理程序将首先运行。

在 GitHub 编辑此页面

上一页 下一页
1
2
3
4
<div onkeydown={(e) => alert(`<div> ${e.key}`)} role="presentation">
	<input onkeydown={(e) => alert(`<input> ${e.key}`)} />
</div>