像csdn的编辑器,按一下按钮就给选中的内容两边加上UBB,我用var sel=document.getElementById("editArea").select();获取textarea中的值,但是想要在两边加上UBB,就不行了。是document.getElementById("editArea").value=""+sel.text+"";这样写吗?这样写不行,用.value也不行,我真不知道该怎么弄,在网上搜了很久也找不到答案,麻烦哪位高手帮帮我,谢谢。
------解决方案--------------------
------解决方案--------------------
没这么复杂吧:
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C/DTD XHTML 1.1//EN"
"http://www.w3c.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3c.org/1999/xhtml">
<head>
<title>title</title>
</head>
<script type="text/javascript">
function done()
{
e = document.getElementById('ta');
alert( e.firstChild.nodeValue)
}
</script>
<body>
<textarea id="ta" cols="10">123456789</textarea>
<br/>
<input type="button" value="加[U]" onclick="done();" />
</body>
</html>
------解决方案--------------------
e = document.getElementById('ta');
alert( e.firstChild.nodeValue);
var newNode=document.createElement("b");
newNode.appendChild(e.firstChild);
e.appendChild(newNode);
------解决方案--------------------
<html xmlns="http://www.w3c.org/1999/xhtml">
<head>
<title>title</title>
</head>
<script type="text/javascript">
function done()
{
e = document.getElementById('ta');
var s = document.selection.createRange();
if (s.parentElement() == e){
s.text = ""+s.text+""
}
}
</script>
<body>
<textarea id="ta">123456789</textarea>
<br/>
<input type="button" value="加[U]" onclick="done();">
</body>
</html>
------解决方案--------------------
或者
- HTML code
script type="text/javascript"> function done() { e = document.getElementById('ta').select();; var s = document.selection.createRange().text; document.getElementById('ta').innerHTML= "[U]"+s+"[/U]" } </script> <body> <textarea id="ta">123456789</textarea> <br/> <input type="button" value="加[U]" onclick="done();">
------解决方案--------------------
剪切版一般都是以flash作为桥梁来兼容FF
相关的介绍和例子你可以搜索GOOGLE