移动端富文本前端基础笔记

【javascript】富文本编辑

2017-12-19  本文已影响4人  shanruopeng

富文本编辑

1、使用contenteditable属性

<div class="editable" id="richedit" contenteditable></div>
var div = document.getElementById("richedit");
div.contentEditable = "true";

2、操作富文本

//转换粗体文本
frames["richedit"].document.execCommand("bold", false, null);

//转换斜体文本
frames["richedit"].document.execCommand("italic", false, null);

//创建指向www.wrox.com 的链接
frames["richedit"].document.execCommand("createlink", false,
"http://www.wrox.com");

//格式化为1 级标题
frames["richedit"].document.execCommand("formatblock", false, "<h1>");
//转换粗体文本
document.execCommand("bold", false, null);
//转换斜体文本
document.execCommand("italic", false, null);
//创建指向www.wrox.com 的链接
document.execCommand("createlink", false,
"http://www.wrox.com");
//格式化为1 级标题
document.execCommand("formatblock", false, "<h1>");

(1)queryCommandEnabled()

var result = frames["richedit"].document.queryCommandEnabled("bold");

(2)queryCommandState()

var isBold = frames["richedit"].document.queryCommandState("bold");

(3)queryCommandValue()

var fontSize = frames["richedit"].document.queryCommandValue("fontsize");

3、富文本选区

/**为富文本编辑器中被选择的文本添加黄色的背景**/
var selection = frames["richedit"].getSelection();
//取得选择的文本
var selectedText = selection.toString();
//取得代表选区的范围
var range = selection.getRangeAt(0);
//突出显示选择的文本
var span = frames["richedit"].document.createElement("span");
span.style.backgroundColor = "yellow";
range.surroundContents(span);

4、表单与富文本

EventUtil.addHandler(form, "submit", function(event){
    event = EventUtil.getEvent(event);
    var target = EventUtil.getTarget(event);
    target.elements["comments"].value =
    frames["richedit"].document.body.innerHTML;
});
EventUtil.addHandler(form, "submit", function(event){
    event = EventUtil.getEvent(event);
    var target = EventUtil.getTarget(event);
    target.elements["comments"].value =
    document.getElementById("richedit").innerHTML;
});
好好学习
上一篇 下一篇

猜你喜欢

热点阅读