0
我有一个可编辑的iframe,我想在用户单击iframe外部的按钮时在光标位置插入文本。我尝试使用下面的代码插入文本:将文本插入设计模式iframe由iframe之外的按钮触发
function insertAtCursor(iframename, text, replaceContents) {
if(replaceContents==null){replaceContents=false;}
if(!replaceContents){//collapse selection:
var sel=document.getElementById(iframename).contentWindow.getSelection()
sel.collapseToStart()
}
document.getElementById(iframename).contentWindow.document.execCommand('insertHTML', false, text);
};
我认为这是失败,因为当我去按一下按钮的焦点变化。但是,我不知道如何解决这个问题。感谢您的帮助。
我得到了你建议在不使用event.preventDefault()行的情况下工作的代码。但是,每隔一次按下按钮,iframe就会失去焦点。文本被插入到正确的位置,但如果用户尝试键入,则不会进入iframe。为了解决这个问题,我尝试添加这一行:if(document.activeElement.id!='home_codeframe'){$('#home_codeframe')。focus(); }。但是,这并没有奏效。有关如何解决这个问题的任何想法?谢谢。 – 2011-12-28 20:28:06