如何通过HTML的aria-dropeffect属性设置拖放目标为复制或移动操作?
- 内容介绍
- 文章标签
- 相关推荐
本文共计786个文字,预计阅读时间需要4分钟。
`aria-dropeffect 已被 W3C 正式弃用,现代浏览器不再支持它。因此,不应再用于标注拖放操作类型。
为什么不能用 aria-dropeffect
该属性在 ARIA 1.1 中就被标记为 Deprecated,ARIA 1.2 及后续版本已将其完全移除。主流浏览器(Chrome、Firefox、Safari、Edge)均不解析或暴露该属性,屏幕阅读器也不会据此播报“可复制”“可移动”等语义。
- 它从未在真实辅助技术中形成一致支持
- 规范明确建议用
dataTransfer.effectAllowed+drop事件逻辑替代语义表达 - 设置
aria-dropeffect="copy"不会产生任何可访问性收益,反而可能误导开发者以为功能已实现
真正起作用的替代方案:用 dataTransfer.effectAllowed 和视觉反馈
用户能否执行“复制”或“移动”,取决于拖动源设置的 effectAllowed 值,以及目标区域是否在 dragover 中调用 preventDefault() —— 这才是浏览器判定“此处可放置”的唯一依据。
本文共计786个文字,预计阅读时间需要4分钟。
`aria-dropeffect 已被 W3C 正式弃用,现代浏览器不再支持它。因此,不应再用于标注拖放操作类型。
为什么不能用 aria-dropeffect
该属性在 ARIA 1.1 中就被标记为 Deprecated,ARIA 1.2 及后续版本已将其完全移除。主流浏览器(Chrome、Firefox、Safari、Edge)均不解析或暴露该属性,屏幕阅读器也不会据此播报“可复制”“可移动”等语义。
- 它从未在真实辅助技术中形成一致支持
- 规范明确建议用
dataTransfer.effectAllowed+drop事件逻辑替代语义表达 - 设置
aria-dropeffect="copy"不会产生任何可访问性收益,反而可能误导开发者以为功能已实现
真正起作用的替代方案:用 dataTransfer.effectAllowed 和视觉反馈
用户能否执行“复制”或“移动”,取决于拖动源设置的 effectAllowed 值,以及目标区域是否在 dragover 中调用 preventDefault() —— 这才是浏览器判定“此处可放置”的唯一依据。

