我这么调用execCommand方法为什么不起作用?      window.frames["MW_IFRAME"].focus();
      window.frames["MW_IFRAME"].document.execCommand("bold");
一共测试如下几个浏览器:
IE6 / IE7 / IE8
Mozilla Firefox
Safari
Opera
Google Chrome只有 Safari, Opera, Google Chrome 浏览器正常,其它运行都失败,请高手赐教。

解决方案 »

  1.   

    window.frames["MW_IFRAME"] 最好用document.getELementById代替
      

  2.   

    另外,.focus()可能也有兼容性问题
      

  3.   

    具体代码在这里,大家帮忙看下http://www.izhaoyang.com/test/example.htmexecCommand在316行
      

  4.   


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Miniweaver 2010</title>
    <script type="text/javascript">
      <!--
      MW = null;  function exec(command, value){
        document.getElementById('MW').contentWindow.focus();
        MW.execCommand(command, false, value);
      }  window.onload = function() {
        MW = document.getElementById("MW").contentDocument || document.getElementById("MW").contentWindow.document;
        MW.designMode="on";
      }
      //-->
    </script>
    </head><body>
    <button onclick="exec('bold')">加粗</button><br />
    <iframe id="MW" name="MW" width="400" height="300" style="border:#FF0000 3px inset;"></iframe>
    </body>
    </html>
    弄了个简单的测试,问题解决了,一共测试如下几个浏览器:
    IE6 / IE7 / IE8
    Mozilla Firefox
    Safari
    Opera
    Google Chrome
    Netscape Browser以上浏览器全部运行正常,怎么总是我自己把自己的问题解决了……
      

  5.   

    IE8下执行bold是有BUG的.执行的目标元素如果有style="font-weight: bold;...就会出问题.