當用戶點擊我的頁面構建器中的contenteditable元素時,我觸發一個點擊事件,它會初始化一個Shared CKEditor
實例。初始化Shared CKEditor後還原插入符的位置?
問題是我失去了插入符的位置,CKEditor將這個光標放到了文本的開頭?
我想將插入位置恢復到用戶在初始化之前單擊的位置。這主要在文本的中間。
要做到這一點,我需要兩個步驟:
- 獲取初始化CKEditor的
- 使用在CKEditor的「instanceReady」事件中的插入位置之前插入位置和指針放回。
我發現這段代碼(從here):
editor.focus();
var selection = editor.getSelection();
var range = selection.getRanges()[0];
var pCon = range.startContainer.getAscendant({p:2},true); //getAscendant('p',true);
var newRange = new CKEDITOR.dom.range(range.document);
newRange.moveToPosition(pCon, CKEDITOR.POSITION_BEFORE_START);
newRange.select();
但是,當編輯器已經實例這隻作品。在我的情況下,我開始沒有編輯。
任何方法來完成這項工作?
請提供一個工作示例來演示問題並寫出您想要發生的事情。 – Dekel