首页 > 解决方案 > display:none 如果兄弟姐妹子 div 为空,则显示一个 div

问题描述

)

如果兄弟姐妹子 div 为空,我正在尝试隐藏文本“Produktgrundpreis (falls vorhanden):”。 这就是网站看起来像 atm 的样子

这是DOM 结构

<div id="Produktgrundpreis-Text" class="brz-css-kfrku brz-css-iwlmt brz-wrapper">
  <div class="brz-rich-text brz-css-psnqi" data-custom-id="nvnuscfnezabbinlagscfvcigqzzhejoypkb">
    <div>
      <p class="brz-css-zpfqz" data-uniq-id="wuxnq" data-generated-css="brz-css-vtvig">
        <span class="brz-cp-color7">Produktgrundpreis (falls vorhanden):</span>
      </p>
    </div>
  </div>
</div>

<div id="Produktgrundpreis-Shortcode" class="brz-css-kfrku brz-css-eburp brz-wrapper">
  <div class="brz-wp-shortcode brz-css-fciet" data-custom-id="xfbqskiqkijowmwcilpwfpsdgetytiwoqvto">
    <div>
    </div>
  </div>
</div>

我是一个绝对的 JS 初学者,并尝试了我自己一起编写的以下代码:

function pgpSichtbarkeit() {
  var pgpShortcode = document.getElementById('Produktgrundpreis-Shortcode').innerText;
  
  console.log(pgpShortcode)

  if (pqpShortcode.includes('')) {
    document.getElementById('Produktgrundpreis-Text').style.display = "none";
  }
}

由于 Produktgrundpreis-Shortcode 的文本内容是空的,我想我可以克服这种情况并使用 .innerText。我还能做些什么更好?

标签: javascript

解决方案


由于空 ('') 是假值,您可以使用假值检查。如果您认为可以有空格,也可以使用 trim (' ')

function pgpSichtbarkeit() {
  var pgpShortcode = document.getElementById('Produktgrundpreis-Shortcode').innerText;
  // if (!pgpShortcode.trim())
  if (!pgpShortcode) {
      document.getElementById('Produktgrundpreis-Text').style.display = "none";
  }
}

pgpSichtbarkeit();

推荐阅读