如何在可编辑的iframe上设置插入符的位置?
问题描述:
我需要在contentEditable iframe上设置插入符的位置。它需要在Google Chrome和Firefox上工作(不需要IE)。如何在可编辑的iframe上设置插入符的位置?
我该怎么做?
我已经试过
var ifr = document.querySelector(".myIframe");
var idoc = ifr.contentDocument;
var ibody = ifr.contentDocument.body; // content: "teststring|"
var caret = 2;
var sel = ifr.contentDocument.getSelection();
var range = sel.getRangeAt(0);
var el = ibody;
range.setStart(el, caret);
range.setEnd(el, caret);
并没有什么发生在Chrome浏览器...我有什么改变?
答
这应该工作:
var ifr = document.querySelector(".myIframe");
var idoc = ifr.contentDocument;
var ibody = ifr.contentDocument.body; // content: "teststring|"
var caret = 2;
var sel = ifr.contentDocument.getSelection();
var range = sel.getRangeAt(0);
var el = ibody;
range.setStart(el, caret);
range.setEnd(el, caret);
sel.removeAllRanges();
sel.addRange(range);
看最后两行