Html5富文本编辑器的示例分析
这篇文章给大家分享的是有关Html5富文本编辑器的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
使用H5的全局属性contenteditable可以让DOM元素及其子元素变的可编辑
<div contenteditable id="editor"> </div>
样式代码
html, body { overflow: hidden; width: 100%; height: 100%; }* { margin: 0; padding: 0; } #editor { width: 100%; height: 100%; outline: none; padding-left: 15px; }
* chrome 49下测试有效
以下方式使得用户初始输入的文本内容在p元素的包裹下
<div contenteditable id="editor" spellcheck="false"><p><br/></p></div>
默认规则如下
否则将直接作为#editor元素的文本节点,即<div contenteditable id="editor" spellcheck="false">文本内容</div>同事点击Enter将新增div元素,即<div contenteditable id="editor" spellcheck="false">文本内容<div></div></div>
View Code
#editor中的所用元素都是可被删除的,当#editor为空元素时,用户再次输出内容还会应用默认规则,这里要监听这一状态,发生时将<p><br/></p>添入其中,并且定位光标到p元素的最后
定位光标代码
function cursorToEnd(element){ element.focus();var range = window.getSelection(); range.selectAllChildren(element); range.collapseToEnd(); }
window.getSelection() IE9已经支持
不定位可能发生以下情况
<div contenteditable id="editor" spellcheck="false"> 111111 <p><br/></p> </div>
感谢各位的阅读!关于“Html5富文本编辑器的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!