1 回答

TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
我使用了Range API中的以下方法
extractContents:提取所選內(nèi)容,因此我們可以用粗體標(biāo)簽將其包裹起來(lái)。
insertNode:將修改后的內(nèi)容放回原位置。
let editor = document.getElementById('editor');
var preCaretRange;
function actionBold(e){
? ? var bold = document.createElement('b'); // created bold tag
? ? bold.appendChild(preCaretRange.extractContents()); // extracting and wrapping the content with tag
? ? preCaretRange.insertNode(bold); // insert the modified content back
}
function onMouseUp() {
? ? var doc = editor.ownerDocument || editor.document;
? ? var win = doc.defaultView || doc.parentWindow;
? ? preCaretRange = win.getSelection().getRangeAt(0);
}
- 1 回答
- 0 關(guān)注
- 116 瀏覽
添加回答
舉報(bào)