2011-11-28 2 views
2

contentEditable iframe에 캐럿 위치를 설정해야합니다. Google 크롬 및 Firefox에서 작동해야합니다 (Internet Explorer 필요 없음).편집 가능한 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); 

을 시도하고 아무것도 크롬에서 발생하지?

답변

6

해야 일 : 마지막 두 줄에서

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); 

관련 문제