Javascript 选择范围删除内容是否保留空节点?
我有一个脚本,可以将html标记包装在选择内容周围Javascript 选择范围删除内容是否保留空节点?,javascript,html,selection,range,Javascript,Html,Selection,Range,我有一个脚本,可以将html标记包装在选择内容周围 function wrap(tagName) { var selection; var elements = []; var ranges = []; var rangeCount = 0; if (window.getSelection) { selection = window.getSelection(); if (selection.rangeCount) { rangeCount = sele
function wrap(tagName)
{
var selection;
var elements = [];
var ranges = [];
var rangeCount = 0;
if (window.getSelection)
{
selection = window.getSelection();
if (selection.rangeCount)
{
rangeCount = selection.rangeCount;
for (var i=0; i<rangeCount; i++)
{
ranges[i] = selection.getRangeAt(i).cloneRange();
elements[i] = document.createElement(tagName);
elements[i].appendChild(ranges[i].cloneContents());
ranges[i].deleteContents();
ranges[i].insertNode(elements[i]);
ranges[i].selectNode(elements[i]);
}
selection.removeAllRanges();
for (var i=0; i<ranges.length; i++)
{
selection.addRange(ranges[i]);
}
}
}
}
函数换行(标记名)
{
var选择;
var元素=[];
var范围=[];
var rangeCount=0;
if(window.getSelection)
{
selection=window.getSelection();
if(selection.rangeCount)
{
rangeCount=selection.rangeCount;
for(var i=0;我回答了你的一个非常类似的问题:。我的回答有用吗?很抱歉我的反应太晚了,这正是我所需要的。非常感谢!可能是重复的
<strong>W</strong>elcom<strong>e</strong>
<strong></strong><u><strong>W</strong>elcom<strong>e</strong></u><strong></strong>
<u><strong>W</strong>elcom<strong>e</strong></u>