为了账号安全,请及时绑定邮箱和手机立即绑定

如何用元素包装/环绕突出显示的文本

如何用元素包装/环绕突出显示的文本

拉莫斯之舞 2019-09-24 11:03:13
我想将选定的文本包装在具有span的div容器中,可以吗?用户将选择一个文本并单击一个按钮,在按钮单击事件中,我想用span元素包装该选定的文本。我可以使用来获取所选文本,window.getSelection()但是如何知道其在DOM结构中的确切位置?
查看完整描述

3 回答

?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

function wrapSelectedText() {       

    var selection= window.getSelection().getRangeAt(0);

    var selectedText = selection.extractContents();

    var span= document.createElement("span");

    span.style.backgroundColor = "yellow";

    span.appendChild(selectedText);

    selection.insertNode(span);

}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam rhoncus  gravida magna, quis interdum magna mattis quis. Fusce tempor sagittis  varius. Nunc at augue at erat suscipit bibendum id nec enim. Sed eu odio  quis turpis hendrerit sagittis id sit amet justo. Cras ac urna purus,  non rutrum nunc. Aenean nec vulputate ante. Morbi scelerisque sagittis  hendrerit. Pellentesque habitant morbi tristique senectus et netus et  malesuada fames ac turpis egestas. Nulla tristique ligula fermentum  tortor semper at consectetur erat aliquam. Sed gravida consectetur  sollicitudin. 


<input type="button" onclick="wrapSelectedText();" value="Highlight" />


查看完整回答
反对 回复 2019-09-24
  • 3 回答
  • 0 关注
  • 382 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号