IE下可用
L@_@K<!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>
    <title> new document </title>
    <meta name="generator" content="editplus" />
    <meta name="author" content="Gao YiXiang" />
    <meta name="email" content="[email protected]" />
    <meta name="keywords" content="javascript dhtml dom" />
    <meta name="description" content="I love web development." />
</head>
<body>
    <textarea id="" rows="" cols="">Please select me</textarea>
    <input type="button" id="btnBold" value="B" />
<script type="text/javascript">
<!--
btnBold.onclick = function()
{
    var range = document.selection.createRange();
    range.text = "" + range.text + "";
};
//-->
</script>
</body>
</html>

解决方案 »

  1.   

    答案都在手册里
    L@_@K
    DHTML参考手册
      

  2.   

    还有一个问题哦,就是如果鼠标选择的文字不是在这个textarea里面的,按下 B 后就没有任何反映。应该怎么实现,谢谢!
      

  3.   

    function storeCaret(_obj1){
    if(_obj1.createTextRange) 
    _obj1.caretPos = document.selection.createRange().duplicate();   
    }function insertAtCaret() {
    var _obj1 = document.getElementById("textarea1");
            
            var _text = "[b]";

    _obj1.focus();
    storeCaret(_obj1);

    if(_obj1.createTextRange && _obj1.caretPos){
    var caretPos = _obj1.caretPos;
    caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?_text + ' ' : _text;      
    }else _obj1.value = _text;
    }   
      

  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>
        <title> new document </title>
        <meta name="generator" content="editplus" />
        <meta name="author" content="Gao YiXiang" />
        <meta name="email" content="[email protected]" />
        <meta name="keywords" content="javascript dhtml dom" />
        <meta name="description" content="I love web development." />
    </head>
    <body>
        <textarea id="aaa" rows=10 cols=100>Please select me</textarea>
        <input type="button" id="btnBold" value="B" />
    <script type="text/javascript">
    <!--
    btnBold.onclick = function()
    {
        var range = document.selection.createRange();
        range.select();
        if (document.activeElement.id != "aaa") return;
        range.text = "" + range.text + "";
        range.select();
    };
    //-->
    </script>
    </body>
    </html>
      

  5.   

    <!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>
        <title> new document </title>
        <meta name="generator" content="editplus" />
        <meta name="author" content="Gao YiXiang" />
        <meta name="email" content="[email protected]" />
        <meta name="keywords" content="javascript dhtml dom" />
        <meta name="description" content="I love web development." />
    </head>
    <body>
        <textarea id="aaa" rows=10 cols=100>Please select me</textarea>
        <input type="button" id="btnBold" value="B" />
    <script type="text/javascript">
    <!--
    btnBold.onclick = function()
    {
        var range = document.selection.createRange();
        range.select();
        if (document.activeElement.id != "aaa") return;
        range.text = "" + range.text + "";
        range.select();
    };
    //-->
    </script>
    </body>
    </html>