繁体   English   中英

如何删除Jquery中两个元素之间的文本?

[英]How to remove text between two elements in Jquery?

如何删除Jquery中具有不同类和相同容器的两个元素之间的text('/')? 我需要删除a.main-home和a.home之间的斜线。 .reght_pagenation内的链接数量是多种多样的。 可能吗 ? 非常感谢你。

HTML:

<div class="reght_pagenation">
  <a title="Úvod" href="http://www.odsavacky.cz/en">Úvod</a>
   /
  <a title="Produkty" href="http://www.odsavacky.cz/en/produkty">Produkty</a>
  <a class="main-home" href="http://www.odsavacky.cz" title="Go to Cheiron a.s..">Cheiron a.s.</a>
   /
  <a class="home" href="http://www.odsavacky.cz/en" title="Go to CHEIRÓN a.s. - English.">CHEIRÓN a.s. - English</a>
   / Suction systems
  </div>

您可以在main-home之后找到文本节点并将其删除...添加filter()只是为了进行仔细检查。

var $mh = $('.reght_pagenation .main-home');
$($mh.prop('nextSibling')).filter(function(){
    return this.nodeType == 3
}).remove()

演示: 小提琴

如果始终保证结构相同,则可以省略filter()

使用像这样的小提琴过滤器功能:

$(".reght_pagenation").contents().filter(function() {
    return this.nodeType==Node.TEXT_NODE && $(this).text().trim()=="/";
}).detach();

您可以按以下方式使用过滤器功能:

$('.reght_pagenation')
  .contents()
  .filter(function() {
    return this.nodeType == Node.TEXT_NODE;
  }).remove();

您可以像这样使用简单的jQuery标记:

<script>
  var test1 = $('.reght_pagenation .main-home');
  $(test1.prop('nextSibling')).remove()
</script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM