使用 contenteditable 属性跟踪 div 中的内容更改的能力可以增强用户体验网络应用程序。然而,传统 onchange 事件的缺失带来了挑战。
一种方法是监视可编辑元素内的关键事件。 Keydown 和 keypress 事件发生在内容被修改之前。然而,这并没有涵盖所有场景,因为用户可以使用编辑菜单选项(剪切、复制、粘贴)和拖放操作来更改文本。
最近,HTML5 输入事件已成为监控 contenteditable 元素更改的长期解决方案。目前,Firefox 和 WebKit/Blink 等现代浏览器支持此事件,但 IE 不支持。
考虑以下 JavaScript代码片段:
document.getElementById("editor").addEventListener("input", function() { console.log("input event fired"); }, false);
与 HTML 标记结合,它创建了一个 contenteditable div ID“编辑”。当该 div 的内容被修改时,会触发“input”事件,并在控制台上打印“input eventfired”。
<div contenteditable="true">
通过利用这些技术,开发人员可以有效地捕获并响应所做的更改内容可编辑元素,增强用户体验并在 Web 应用程序中启用高级功能。
以上是如何可靠地检测 Contenteditable Div 中的内容更改?的详细内容。更多信息请关注PHP中文网其他相关文章!