站长资讯网
最全最丰富的资讯网站

H5富文本编辑器的详细介绍

使用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>

默认规则如下

H5富文本编辑器的详细介绍H5富文本编辑器的详细介绍

否则将直接作为#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>

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号