0
我使用appendTo在DOM走动了几个要素:的jQuery appendTo离开以前的父容器空白
jQuery('.footer-pre-home.box.s5,.footer-two.box.s5').appendTo('.footer .copyright');
这工作得很好。但是,当它们被删除时,它们将在其前一个父节点“pre-footer”中留下一个空白字符。这阻止了我在前页脚元素上使用css:empty psuedo类。
任何方法来解决这个appendTo?
原始的HTML低于:
<div class="pre-footer">
<div class="footer-two box s5">
<div class="textwidget">
<ul class="social flat">
<li class="twitter"><a href="http://twitter.com"></a></li>
<li class="facebook"><a href="http://facebook.com"></a></li>
<li class="google"><a href="http://plus.google.com"></a></li>
<li class="youtube"><a href="http://youtube.com"></a></li>
<li class="linkedin"><a href="http://linkedin.com"></a></li>
<li class="rssfeed"><a href="feed/"></a></li>
</ul>
</div>
</div>
</div>
的appendTo后,计算出的页脚预HTML如下:
<div class="pre-footer">
</div>
我不能删除节点,因为有可能是元素它内部不是appendTo的目标。但是,在这种情况下,不是。
我在控制台中运行它,并返回undefined。我正在使用CSS来验证:.footer .pre-footer:empty {display:none!important} –
@ScottB嗯,我虽然使用jQuery':empty'选择器,它不会删除空格,它会过滤只有空格或没有内容的元素。尝试'$(“。pre-footer”)。filter(function(){ return!$。trim(this.innerHTML).length; })。hide();' – undefined
+1是的,修改后的代码和使用jQuery空vs CSS空。谢谢!我在想,你正在使用jQuery trim来删除空白节点空白,以便CSS:空工作。 –