js替换选中的文字,比如,你选择一段文字后,点击一个按钮,这段文字就会被包裹在一个a标签里面

要求兼容ie和chrome... 要求兼容ie和chrome 展开
 我来答
百度网友dde64d5e7
2014-05-07 · TA获得超过2310个赞
知道小有建树答主
回答量:1430
采纳率:66%
帮助的人:1416万
展开全部
<div id="a">loreamloreamloreamloreamloreamloream,loreamloreamloream,loreamloreamloream,loreamloreamloreamloream</div>
<script>
function replaceToA() {
if (document.selection) {
var z = document.selection.createRange();
var t = z.text;
var v = z.htmlText;

z.select();
z.pasteHTML("<a href='#'>"+v+"</a>");
} else {
var z = window.getSelection().getRangeAt(0);
var t = z.toString();
var temp = document.createElement("a");
temp.href="#";
temp.innerHTML = t;

z.deleteContents();
z.insertNode(temp);
}
}

document.onmouseup = replaceToA;
</script>
追问
谢谢啊,真是大神啊。。我发现我的要选中的是文字是在textarea里面。。不在div里面这个咋弄呢。。只用在选中的文字上前后添加一个a标签的字符串就可以了。。
追答
额,在textarea里边是不能显示出链接效果的,一般的做法是通过设置某个div或者iframe的contenteditable属性让用户操作,最后再将处理后的innerhtml传回给textarea供用户查看源码~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式