javascript - 如何在各种浏览器中按下输入后更改 contenteditable block 的行为

标签 javascript cross-browser contenteditable

<div contenteditable="true"> </div> 中按回车键时在 Firefox 中 <br />生产 - 没关系。但是在 Chrome 或 IE 中一个新的 <div><p>被 build 。我应该怎么做才能使 Chrome 和 IE 的行为像 Firefox。

最佳答案

正如 Douglas 之前所说,当客户在可编辑页面上开始一个新段落时,浏览器会尝试克隆之前的标签。当浏览器没有任何偏离时,就会出现差异——例如最初页面主体为空时。在这种情况下,不同的浏览器表现不同:IE 开始将每个字符串包装到

标记中,Chrome 将每一行包装在

中。

为了增加跨浏览器体验,WebKit 开发人员引入了 DefaultParagraphSeparator命令。您可以在 Chrome 的页面加载中使用以下 JavaScript 将默认段落分隔符更改为

标记:

document.execCommand('defaultParagraphSeparator', false, 'p');

关于javascript - 如何在各种浏览器中按下输入后更改 contenteditable block 的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2735672/

相关文章:

jquery - 当插入符位于内容可编辑的 div 中时插入 html

javascript - textarea 文本逆序上的 jquery 循环?

javascript - 将 base64 转换为 Javascript 中的文件

javascript - 使用 php 时 jQuery 函数中断

html - 处理跨浏览器兼容性和 CSS w/IE6/7

javascript - IE 11 是否支持共享 WebWorker?

javascript - 长内容可编辑的 div 被鼠标水平滚动屏蔽为输入

javascript - react .js : how to make inline styles automatically update progress bar on state change

javascript - onchange使用ajax在表行中追加数据

javascript - ngOptions - 值未定义