
contenteditable 编辑框中 shift+enter 换行导致结构混乱问题
在具有 contenteditable="true" 属性的编辑框中使用 Shift+Enter 换行可能会导致结构混乱。这是因为默认情况下,Shift+Enter 会同时触发 Enter 和 Shift 键,在大多数文本编辑器中,Enter 键会创建新行,而 Shift 键会切换到 <h1> 标签。
解决方案
为了解决此问题,可以修改键盘输入事件处理程序,以在按 Shift+Enter 时执行不同的操作:
function keyDown(event) {
if (event.shiftKey && event.keyCode === 13) {
event.preventDefault();
document.execCommand('insertParagraph');
return false;
}
document.execCommand('formatblock', false, '<p>');
}此代码将检查按下的键是否为 Shift+Enter,如果是,则将阻止默认操作(创建新行和切换到 <h1> 标签),并改为插入一个段落 (<p>)。
仅在特定版本中测试的说明
需要注意的是,此解决方案仅在测试的特定 chrome 版本中进行过测试。在其他版本或浏览器中,可能需要进行调整。
以上就是contenteditable 编辑框中 Shift+Enter 导致结构混乱如何解决?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号