gpt4 book ai didi

javascript - 通过javascript删除上一个和下一个HTML元素

转载 作者:可可西里 更新时间:2023-11-01 13:16:51 25 4
gpt4 key购买 nike

我想通过javascript使用鼠标突出显示所选文本后删除上一个和下一个HTML元素,但我只知道如何获取所选/突出显示的文本,有人可以帮助我吗?谢谢。

function text() {
if (window.getSelection)
return window.getSelection();
if (document.getSelection)
return document.getSelection();
if (document.selection)
return document.selection.createRange().text;
return "";
}

function delete_Tag () {

var txt = text();
// txt already have the selected text
// I don't know how to do in here !!!
// I use the use the find the parentNode, but don't know how to delete the </span>
}

<input type='button' value='Delete Tag' onclick='delete_Tag ()' />

<p id='text'>
<span class="B">I am </span>
<span class="B">working in </span>
<span class="C">ABC company.</span>
</p>

例如我用鼠标高亮'working in ' OR 'orkin' (选中的必须在 ) 然后点击按钮,它会显示

预期结果:

<p id='text'>
<span class="B">I am </span>
working in
<span class="C">ABC company.</span>
</p>

最佳答案

您可以使用如下内容:

 var span = document.getElementsByClassName("B").item(0);
var parent = span.parentNode;
var sibling = span.nextSibling;
var textNode = document.createTextNode(span.innerHTML);

parent.removeChild(span);
parent.insertBefore(textNode, sibling);

关于javascript - 通过javascript删除上一个和下一个HTML元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6745319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com