如果另一个元素包含任何文本,如何隐藏元素

时间:2015-01-21 14:33:35

标签: hide

如何在jquery中编写以下内容:

<div class="one">Hello I am One</div>
<div id="hello"></div>

如果.one包含任何文字,请隐藏hello

非常感谢!

3 个答案:

答案 0 :(得分:1)

的Javascript:

<script>
var txt = document.getElementsByClassName('one')[0].innerText;
if(txt == "") {
    document.getElementById('hello').style.display = "none";
}
</script>

的jQuery:

<script>
if($('.one').text() == '') {
   $('#hide').hide(0);
}
</script>

答案 1 :(得分:1)

您可以在给定元素中找到文本的长度,如果长度为0,那么您就知道它是空的。

var one = document.querySelectorAll('.one')[0];
var hello = document.getElementById('hello');

if (one.innerText.length) {
  hello.style.display = 'none';
}

或者,如果#hello恰好出现在.one之后,你可以用CSS完成这个。

#hello {
  display: none;
}

.one:empty + #hello {
  display: block;
}

答案 2 :(得分:0)

谢谢你的答案!这对我有用:

if($('.one').text() == '') {
    $('#hello').hide;
}