如题
我用如下没反应:
<button onclick="doBold();" >粗体</button>
<textarea id="editPlace" >测试文字</textarea>
<script language="javascript" >
function doBold(){
document.getElementById("editPlace").document.selection.createRange().execCommand("Bold");
}
</script>如果将textarea换成<div>就行,但是这样就失去了<textarea>作为文本框的功能。我现在想保留使用<textarea>,同时还可以修改里面的部分文字内容,该怎么办?

解决方案 »

  1.   

    <textarea>只是简单文本框,没有办法做到这个。
    可视化编辑器一般用一个可编辑的iframe来代替textarea
      

  2.   


    <button onclick="doBold();" >粗体 </button> 
    <textarea id="editPlace" >测试文字 </textarea> 
    <script language="javascript" > 
    function doBold(){ 
    document.getElementById("editPlace").style.fontWeight = "bold";

    </script> 
    这样就可以了
      

  3.   

    iframe内如何添加图片呢?实现图文混排。
    我的代码如下:
    function addSign(str){
    var newImage=document.createElement("img");
    newImage.src="http://localhost:8080/lnuweb/img/monkey/"+str+".gif";
    document.getElementById("editPlace").contentWindow.document.body.appendChild(newImage);
    }<button class="normalE" onclick="addImage();" >添加图片</button>其他代码同上,这种方式在FireFox浏览器下没问题,但是换到IE下却不可以。
    请问IE下如何解决?
      

  4.   


    用jQuery的框架写这些不用考虑兼容了
      

  5.   

    原来如此:新创建的节点是属于父窗口的,无法将其appendChild到iframe中,解决方法当然是在iframe中创建属于自己的节点了。代码如下
    function addImage(){
    var url=prompt("请输入图片地址:","http://");
    if(url=="http://" || url==null){
    return ;
    }
    var doc=document.getElementById("editPlace").contentWindow.document
    var newImage=doc.createElement("img");
    newImage.src=url;
    doc.body.appendChild(newImage);
    }
    希望对以后遇到同样问题的人有帮助撒~~~~