我记得一些HTML编辑器就是在一个textarea里操作的,只是一直不知道如何实现,顶一个先。

解决方案 »

  1.   

    感觉这种textarea就象一个<div CONTENTEDITABLE>,后者FF是支持的。
      

  2.   

    TO 三毛
        我做过一个在线编辑的东西,但是我是把CONTENTEDITABLE属性放到了一个iframe页面里
    textarea只是用来提交iframe页面中的HTML代码到数据库,并且这个textarea是隐藏的。按楼主大哥的做法没做过。
      

  3.   

    firefox支持contenteditable吗?语法是什么?
      

  4.   

    firefox支不支持,我这边现在条件不行,试不了。
    IE中的contenteditable大约就是下面这个样子<body contenteditable=true>
    </body>
    <script language=javascript>
    document.execCommand("InsertImage",false,"http://images.csdn.net/upimgs/wibu.GIF")
    </script>
      

  5.   

    楼主,你所发现的只是ie的一个bug而已。firefox不支持很正常。
      

  6.   

    有意思~~,ie把textarea变成contenteditable了<div id='odiv' contentEditable=true style='height:100%;width:100%;border:4px outset ThreeDHighLight'></div>
    <script language='javascript'>odiv.innerHTML='<img src="http://community.csdn.net/images/CSDN_logo.GIF"/>'</script>
      

  7.   

    早就知道IE这点了啊contenteditable firefox是不支持的但是firefox支持designMode="On" 类似功能
    http://community.csdn.net/Expert/topic/4479/4479333.xml?temp=.3866236
    Mozilla的问题,designMode引起事件失效,大家去看帖子并且接分去
      

  8.   

    是想要textarea做html编辑器的例子吗?
      <FORM name=mainform action="" method=post encType=multipart/form-data>
    <TABLE cellSpacing=0 cellPadding=6 width=565 align=center border=0>
      <TR>
        <TD bgColor=#e1e1e1 height=1></TD></TR>
      <TR>
        <TD class=fontSize14 style="WORD-BREAK: break-all" bgColor=#f9f9f9><TEXTAREA style="WIDTH: 535px; HEIGHT: 350px" name=_fma.p._0.d></TEXTAREA> 
          </TD>
      </TR>
      <TR>
        <TD bgColor=#e1e1e1 height=1></TD></TR>
      <TR>
        <TD bgColor=#e1e1e1 height=1></TD></TR></TABLE>
      </FORM>
    <SCRIPT language=javascript>
    var _formName = 'mainform';
    var _textName = '_fma.p._0.d';
    var _toolBarIconPath = 'http://image.taobao.com/editor';
    var _debug = false; var _maxCount = 25000;
    var _postAction = 'http://upload.taobao.com/auction/redit/preview.jhtml';//语言
    var _a_lang = new Array();
    _a_lang['pic'] = '图片';
    _a_lang['url'] = '地址';
    _a_lang['viewe'] = '显示效果';
    _a_lang['border'] = '边框粗细';
    _a_lang['align'] = '对齐方式';
    _a_lang['absmiddle'] = '绝对居中';
    _a_lang['aleft'] = '居左';
    _a_lang['aright'] = '居右';
    _a_lang['atop'] = '顶部';
    _a_lang['amiddle'] = '中部';
    _a_lang['abottom'] = '底部';
    _a_lang['absbottom'] = '绝对底部';
    _a_lang['baseline'] = '基线';
    _a_lang['submit'] = '确定';
    _a_lang['cancle'] = '取消';
    _a_lang['hlink'] = '超级链接';
    _a_lang['other'] = '其他选项';
    _a_lang['newwindow'] = '在新窗口打开';
    _a_lang['ttop'] = '文本顶部';_a_lang['copy'] = '复制';
    _a_lang['cut'] = '剪切';
    _a_lang['pau'] = '粘贴';
    _a_lang['del'] = '删除';_a_lang['bold'] = '粗体';
    _a_lang['italic'] = '斜体';
    _a_lang['underline'] = '下划线';
    _a_lang['st'] = '中划线';
    _a_lang['jl'] = '左对齐';
    _a_lang['jc'] = '居中对齐';
    _a_lang['jr'] = '右对齐';_a_lang['fcolor'] = '文字颜色';
    _a_lang['bcolor'] = '文字背景颜色';
    _a_lang['ilist'] = '编号';
    _a_lang['itlist'] = '项目符号';
    _a_lang['sup'] = '上标';
    _a_lang['sub'] = '下标';
    _a_lang['createlink'] = '插入链接';
    _a_lang['unlink'] = '取消链接';
    _a_lang['inserthr'] = '插入水平线';
    _a_lang['insertimg'] = '插入/修改图片';
    _a_lang['editsource'] = '编辑源文件';
    _a_lang['preview'] = '预览';
    _a_lang['usehtml'] = '使用编辑器编辑';_a_lang['font'] = '字体';
    _a_lang['simsun'] = '宋体';
    _a_lang['simhei'] = '黑体';
    _a_lang['simkai'] = '楷体';
    _a_lang['fangsong'] = '仿宋';
    _a_lang['lishu'] = '隶书';
    _a_lang['youyuan'] = '幼圆';_a_lang['fontsize'] = '字号';
    _a_lang['fontsize_1'] = '一号';
    _a_lang['fontsize_2'] = '二号';
    _a_lang['fontsize_3'] = '三号';
    _a_lang['fontsize_4'] = '四号';
    _a_lang['fontsize_5'] = '五号';
    _a_lang['fontsize_6'] = '六号';
    _a_lang['fontsize_7'] = '七号';_a_lang['current'] = '当前';
    _a_lang['word'] = '字';
    _a_lang['maxword'] = '最多';_a_lang['modify'] = '修改';
    _a_lang['insert'] = '插入';</SCRIPT><SCRIPT language=javascript 
    src="http://www.taobao.com/home/editor_multi_lang.js"></SCRIPT>
      

  9.   

    这个只能调整大小并不能编辑,所以跟DIV没什么区别
      

  10.   

    既然textarea是一个对象,向他appendChild一个子节点当然是可以的
    实际上可编辑的区域是div,你并不能把内容放在那个红线框以外所以是否存在那个id=t的textarea是无所谓的可编辑性实在对象间继承的。把一个对象放在一个开启了编辑功能的对象中,那么这个对象的编辑功能也被打开了