Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
转换contenteditable div';通过javascript将内容转换为纯文本_Javascript_Iframe_Richtextbox_Contenteditable_Onkeyup - Fatal编程技术网

转换contenteditable div';通过javascript将内容转换为纯文本

转换contenteditable div';通过javascript将内容转换为纯文本,javascript,iframe,richtextbox,contenteditable,onkeyup,Javascript,Iframe,Richtextbox,Contenteditable,Onkeyup,我正在尝试使用一个特性来创建自定义的轻量级富文本编辑器—添加链接。我做了一些研究,认为iframe是最好的选择。在一些混乱之后,它只运行了一个异常——我需要在keyup事件上运行一些代码。我读了所有我在网上找到的东西,没有任何帮助,仍然不起作用 iframe.document.designMode = 'On'; iframe.document.open(); iframe.document.write(someHTML); iframe.document.close(); var keyup

我正在尝试使用一个特性来创建自定义的轻量级富文本编辑器—添加链接。我做了一些研究,认为iframe是最好的选择。在一些混乱之后,它只运行了一个异常——我需要在keyup事件上运行一些代码。我读了所有我在网上找到的东西,没有任何帮助,仍然不起作用

iframe.document.designMode = 'On';
iframe.document.open();
iframe.document.write(someHTML);
iframe.document.close();

var keyupHandle = function() { /* some code */ };

var iframeDoc = document.getElementById('iframe').contentWindow.document;
if(iframeDoc.addEventListener) {
    iframeDoc.addEventListener('keyup', keyupHandle(), true);
} else {
    iframeDoc.attachEvent('onkeyup', keyupHandle());
}

我记得在向文档添加事件处理程序之前,需要等待iframe完全加载。如果可能,在iframe的HTML中添加一些内容,以便在加载时调用父页面:

window.iframeLoaded = function() {
    var iframeDoc = document.getElementById('iframe').contentWindow.document;
    if(iframeDoc.addEventListener) {
        iframeDoc.addEventListener('keyup', keyupHandle(), true);
    } else {
        iframeDoc.attachEvent('onkeyup', keyupHandle());
    }
};

iframe.document.designMode = 'on';
iframe.document.open();
iframe.document.write('<html><body onload="parent.iframeLoaded()">Stuff</body></html>');
iframe.document.close();
window.iframeload=function(){
var iframeDoc=document.getElementById('iframe').contentWindow.document;
if(iframeDoc.addEventListener){
iframeDoc.addEventListener('keyup',keyupHandle(),true);
}否则{
iframeDoc.attachEvent('onkeyup',keyupHandle());
}
};
iframe.document.designMode='on';
iframe.document.open();
iframe.document.write('Stuff');
iframe.document.close();
否则,使用
window.setTimeout()
设置一个简短的计时器可能会起作用