本身直接写在html里面的是可以编辑的
但是创建出来的iframe却不可以编辑
该如何修改了........
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<head>
<script>
var ed = null;
var cd = null;
window.onload = function() {
    var o = document.getElementById("ss"); 
ed = document.all?o.contentWindow.document:o.contentDocument;
ed.designMode = 'on';
};function cc(){
var o   = document.createElement("IFRAME"); 
o.width = 500;o.height = 200;
document.body.appendChild(o);
o.src   = "about:blank";
cd = document.all?o.contentWindow.document:o.contentDocument;
ed.designMode = 'on';
}</script>
</head>
<BODY>
<IFRAME id="ss" height="200" src="about:blank" width="600"></IFRAME>
<input value="cc" type="button" onclick="cc()" />
</BODY></HTML>

解决方案 »

  1.   


    cd = document.all?o.contentWindow.document:o.contentDocument;
    ed.designMode = 'on'; //ed===>cd
      

  2.   

    在ff下还是不行
    但是加个alert后 就可以聚焦了 奇怪
    能不加个alert也能聚焦吗?
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <HTML>
    <head>
    <script>
    var ed = null;
    var cd = null;
    window.onload = function() {
        var o = document.getElementById("ss"); 
        ed = document.all?o.contentWindow.document:o.contentDocument;
        ed.designMode = 'on';
    };function cc(){
        var o   = document.createElement("IFRAME"); 
        o.width = 500;o.height = 200;
        document.body.appendChild(o);
        o.src   = "about:blank";
        alert('a');
        cd = document.all?o.contentWindow.document:o.contentDocument;
        cd.designMode = 'on';
    }</script>
    </head>
    <BODY>
    <IFRAME id="ss" height="200" src="about:blank" width="600"></IFRAME>
    <input value="cc" type="button" onclick="cc()" />
    </BODY></HTML>
      

  3.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <HTML>
    <head>
    <script>
    var ed = null;
    var cd = null;
    window.onload = function() {
        var o = document.getElementById("ss"); 
        ed = document.all?o.contentWindow.document:o.contentDocument;
        ed.designMode = 'on';
    };
    function cc(){
    var o   = document.createElement("IFRAME"); 
    o.width = 500;o.height = 200;
    document.body.appendChild(o);
    o.src   = "about:blank";
    cd = o.contentWindow.document;
    cd.designMode = 'on';
    cd.contentEditable = true;
    cd.write('<html><body></body></html>');
    cd.close();
    }
    </script>
    </head>
    <BODY>
    <IFRAME id="ss" height="200" src="about:blank" width="600"></IFRAME>
    <input value="cc" type="button" onclick="cc()" />
    </BODY></HTML>
      

  4.   

    document.all?o.contentWindow.document:o.contentDocument;
    换成
    (o.contentWindow || o).document;