1. 程式人生 > >js在光標處插入內容

js在光標處插入內容

文本 doc 需要 位置 nod 是否 fin () 場景

//場景一 簡易的頁面可以這樣寫
var range = window.getSelection().getRangeAt(0);
range.insertNode(document.createTextNode("插入的值"));

//場景二 如果需要插入HTML文本,考慮到在彈出框中插入的場景,因此修改為如下方式
var range;//記錄光標位置對象
var node = window.getSelection().anchorNode;
// 這裏判斷是做是否有光標判斷,因為彈出框默認是沒有的
if(node!=null){
range = window.getSelection().getRangeAt(0);// 獲取光標起始位置
}else{
  range = undefined;
}
var doc = document.createElement("img");//創建節點對象
doc.setAttribute("src", imgSrc);//給節點對象添加屬性
range.insertNode(doc);// 在光標位置插入該對象

js在光標處插入內容