【问题标题】:Hide all element except one child div including its children using jquery使用 jquery 隐藏除一个子 div 之外的所有元素,包括其子元素
【发布时间】:2017-05-22 11:37:51
【问题描述】:

在具有 myDiv 类的 div 下有一个视频播放器。 我想隐藏整个网站,只想显示视频,即 myDiv 及其子项。如何使用 jQuery 或 JavaScript 来实现。

<body>
   <header></header>
   <main>
      <section></section>
      <section>
        <div class="myDiv">
           <div></div>
           <div</div>
        </div>
      </section>
      <section></section>
   </main>
   <footer></footer>
</body>

【问题讨论】:

  • 为什么不添加一个通用的hidden 类?
  • 你想隐藏“一切”或者只是main的内容
  • 是的。我想隐藏除 myDiv 之外的所有内容,其中有一个视频播放器。我只想播放该视频并隐藏所有内容。

标签: javascript jquery html


【解决方案1】:

您可以为视频 div 赋予一个类,并为每个其他 div 赋予一个隐藏类并编写代码,以便当您单击它播放时,它会隐藏其他所有内容。

所以在你的 jquery 中

$('.videoClass').click(function(){
 $('.hide').css('display','none');
});

您可以添加一个切换开关,这样当您再次单击它时,它会显示所有隐藏的 div。

【讨论】:

  • 我无法控制该网站。 ?
【解决方案2】:

试试jquery的filter()函数

$('section').filter(function(){
 return $(this).find('.myDiv').length == 0 //its hiding except myDiv
}).hide()
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<body>
  <main>
    <section>first</section>
    <section>second contains myDiv
      <div class="myDiv">its a my div
        <div>i m child of myDiv</div>
        <div>i m child of myDiv</div>
      </div>
    </section>
    <section>Third</section>
  </main>
</body>

【讨论】:

  • 这是隐藏 myDiv,我想隐藏除此之外的所有内容。
  • No 不是隐藏 myDiv 。请参阅 sn-p @kirangoud
猜你喜欢
  • 2011-05-15
  • 2012-05-14
  • 2012-05-20
  • 2015-06-18
  • 1970-01-01
  • 1970-01-01
  • 2011-02-04
相关资源
最近更新 更多