document.execCommand("BackColor",false,"red") document.execCommand("BackColor",false,"red"). 函数是给选中的文本加上背景颜色. 我是用iframe 做的编辑器,使用这个函数的时候,IE 是正常的 ,但是,在 火狐 下面,它加的是整个iframe 的背景颜色,不是选中文本的背景颜色,请问高手 怎么解决这个问题. 期待你的回答! 

解决方案 »

  1.   

    ff下可以使用execCommand('insertHTML', false, value),其实很多兼容问题都可以使用这个命令解决。
      

  2.   

    ff下是可以使用execCommand的,只是它的行为是块级元素,用下面的例子测试test.htm文件
    <iframe src="b.htm" id="f"></iframe><input onclick='setColor()' type=button>
    <script>function setColor()
    {
    iframe = document.getElementById('f');
    iframe.contentWindow.document.execCommand("backColor",false,"#FF0000");
    }</script>b.htm内容
    <!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"/><body onload="document.designMode='on'">
    <div>aaa</div>
    <div>aaa</div>
    <div>aaa</div>