gpt4 book ai didi

javascript - jQuery : Split the DOM Node using jQuery

转载 作者:行者123 更新时间:2023-12-03 02:55:03 24 4
gpt4 key购买 nike

我的问题是使用 jquery 分割 Dom 元素。

<span class="start">
<span class="second">
new text <span class='split'>is written</span> in this place.
</span>
</span>

我想像这样分割上面的 DOM。

<span class="start"><span class="second">new text</span></span>

<span class="start"><span class="second">is written</span></span>

<span class="start"><span class="second">in this place.</span></span>

请大家给我一些建议。

最佳答案

一种方法是:

last_text=$('.split')[0].nextSibling; //get textNode after split span
prev_text=$('.split')[0].previousSibling; //get text Node before split span
current=$('.split').text(); //get split span text

$('.second').html(' '); //clear current html


cloned1=$('.start').clone(); // clone el
cloned1.insertAfter($('.start'));
cloned2=$('.start').first().clone(); //clone one more
cloned2.insertAfter($('.start').last());
//set text for elements
$('.start .second').eq(0).html(prev_text);
$('.start .second').eq(1).html(current);
$('.start .second').eq(2).html(last_text);

演示:

last_text=$('.split')[0].nextSibling; //get textNode after split span
prev_text=$('.split')[0].previousSibling; //get text Node before split span
current=$('.split').text(); //get split span text

$('.second').html(' '); //clear current html


cloned1=$('.start').clone(); // clone el
cloned1.insertAfter($('.start'));
cloned2=$('.start').first().clone(); //clone one more
cloned2.insertAfter($('.start').last());
//set text for elements
$('.start .second').eq(0).html(prev_text);
$('.start .second').eq(1).html(current);
$('.start .second').eq(2).html(last_text);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="start">
<span class="second">
new text <span class='split'>is written</span> in this place.
</span>
</span>

附注如果没有类(我猜可能是这种情况),您将不得不使用不同的选择器,以目标跨度(在容器内?),使用 eq(),也许,但是,基本上,这个简单的逻辑应该有效。 .

关于javascript - jQuery : Split the DOM Node using jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47670494/

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