我有一个contenteditable元素,其中一些文本用<b>
和<i>
标签装饰。我试图找到从中删除最后一个单词而不影响装饰的最佳方法。
我不能简单地删除最后一个子节点中的最后一个单词,因为一个单词可以包含在多个<b>
和<i>
标记中。
例如(必须删除“internet。”一词):
<div>Build the best reference material for developer tools <i>on the inter<b>net</b></i>.</div>
对于这种情况,可能会有一些或多或少的优雅和原生的解决方案。
答案 0 :(得分:0)
以下示例代码可帮助您实现所需目标。而不是使用HTML,使用文本,这将解决问题。
var text = $("#sometext").text();
text = text.split(" ");
text.pop(); //remove last element
$(".output").html(text.join(" "));
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="sometext">Build the best reference material for developer tools <i>on the inter<b>net</b></i>.</div>
<div class="output"></div>
&#13;