Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery隐藏元素的最佳方法_Jquery_Html_Hide - Fatal编程技术网

jquery隐藏元素的最佳方法

jquery隐藏元素的最佳方法,jquery,html,hide,Jquery,Html,Hide,我有6个div,试图在单击时隐藏5个div并显示1个div。隐藏5个div并显示1个div的最佳方法是什么?我在想如果我有n个div。需要建议吗 <script> $(document).ready(function () { $('#divLandingLink1').click(function () { $('#landingInfo1').show(); $('#landingInfo2,#landing

我有6个div,试图在单击时隐藏5个div并显示1个div。隐藏5个div并显示1个div的最佳方法是什么?我在想如果我有n个div。需要建议吗

<script>
    $(document).ready(function () {
        $('#divLandingLink1').click(function () {
            $('#landingInfo1').show();
            $('#landingInfo2,#landingInfo3,#landingInfo4,#landingInfo5,#landingInfo6').hide();
        });
        $('#divLandingLink2').click(function () {
            $('#landingInfo2').show();
            $('#landingInfo1,#landingInfo3,#landingInfo4,#landingInfo5,#landingInfo6').hide();
        });
        $('#divLandingLink3').click(function () {
            $('#landingInfo3').show();
            $('#landingInfo1,#landingInfo2,#landingInfo4,#landingInfo5,#landingInfo6').hide();
        });
        $('#divLandingLink4').click(function () {
            $('#landingInfo4').show();
            $('#landingInfo1,#landingInfo2,#landingInfo3,#landingInfo5,#landingInfo6').hide();
        });
        $('#divLandingLink5').click(function () {
            $('#landingInfo5').show();
            $('#landingInfo1,#landingInfo2,#landingInfo3,#landingInfo4,#landingInfo6').hide();
        });
        $('#divLandingLink6').click(function () {
            $('#landingInfo6').show();
            $('#landingInfo1,#landingInfo2,#landingInfo3,#landingInfo4,#landingInfo5').hide();
        });
    });
</script>

$(文档).ready(函数(){
$('#divLandingLink1')。单击(函数(){
$('#landinginfo').show();
$('#LandingInfo 2,#LandingInfo 3,#LandingInfo 4,#LandingInfo 5,#LandingInfo 6').hide();
});
$('#divLandingLink2')。单击(函数(){
$('#landinginfo').show();
$(“#LandingInfo 1,#LandingInfo 3,#LandingInfo 4,#LandingInfo 5,#LandingInfo 6”).hide();
});
$('#divLandingLink3')。单击(函数(){
$('#landinginfo').show();
$(“#LandingInfo 1,#LandingInfo 2,#LandingInfo 4,#LandingInfo 5,#LandingInfo 6”).hide();
});
$('#divLandingLink4')。单击(函数(){
$('#landinginfo').show();
$(“#LandingInfo 1,#LandingInfo 2,#LandingInfo 3,#LandingInfo 5,#LandingInfo 6”).hide();
});
$('#divLandingLink5')。单击(函数(){
$('#landinginfo').show();
$(“#LandingInfo 1,#LandingInfo 2,#LandingInfo 3,#LandingInfo 4,#LandingInfo 6”).hide();
});
$('#divLandingLink6')。单击(函数(){
$('#landinginfo').show();
$(“#LandingInfo 1,#LandingInfo 2,#LandingInfo 3,#LandingInfo 4,#LandingInfo 5”).hide();
});
});

使所有div都有一个公共类:

$(".option").click(function(){
    $(".option").hide();
    $(this).show();
});

小提琴:

让所有的div都有一个共同的等级:

$(".option").click(function(){
    $(".option").hide();
    $(this).show();
});

Fiddle:

由于您正在单击的div与正在隐藏/显示的div不同,因此您需要一种方法将可单击div与隐藏/显示div链接起来。标记中的数据属性可能是一个很好的选择

由于不了解您的结构,这里有一个基本示例,它还为可单击和可显示的div提供了公共类,以便于访问

<div id="divLandingLink1" class="divLandingLink" data-id="landingInfo1">show info div 1</div>
<div id="landingInfo1" class="landingInfo">info div 1</div>
<div id="divLandingLink2" class="divLandingLink" data-id="landingInfo2">show info div 2</div>
<div id="landingInfo2" class="landingInfo">info div 2</div>

<script>
    $(document).ready(function () {
        $('.divLandingLink').click(function () {
            $('.landingInfo').hide();
            var id = $(this).data('id');
            $('#'+id).show();
        });
    });
</script>
show info div 1
资讯组1
节目资讯组2
资讯组2
$(文档).ready(函数(){
$('.divLandingLink')。单击(函数(){
$('.landingInfo').hide();
var id=$(this.data('id');
$('#'+id).show();
});
});

fiddle:

由于您正在单击的div与正在隐藏/显示的div不同,因此您需要一种方法将可单击div与隐藏/显示div链接起来。标记中的数据属性可能是一个很好的选择

由于不了解您的结构,这里有一个基本示例,它还为可单击和可显示的div提供了公共类,以便于访问

<div id="divLandingLink1" class="divLandingLink" data-id="landingInfo1">show info div 1</div>
<div id="landingInfo1" class="landingInfo">info div 1</div>
<div id="divLandingLink2" class="divLandingLink" data-id="landingInfo2">show info div 2</div>
<div id="landingInfo2" class="landingInfo">info div 2</div>

<script>
    $(document).ready(function () {
        $('.divLandingLink').click(function () {
            $('.landingInfo').hide();
            var id = $(this).data('id');
            $('#'+id).show();
        });
    });
</script>
show info div 1
资讯组1
节目资讯组2
资讯组2
$(文档).ready(函数(){
$('.divLandingLink')。单击(函数(){
$('.landingInfo').hide();
var id=$(this.data('id');
$('#'+id).show();
});
});

fiddle:

向链接添加
数据div
属性:

<div id="container">
    <a href="#" data-div="landingInfo1">Info 1</a>
    <div id="landingInfo1">
        More info here
    </div>
    <a href="#" data-div="landingInfo2">Info 2</a>
    <div id="landingInfo2">
        More info here
    </div>
</div>

数据div
属性添加到链接:

<div id="container">
    <a href="#" data-div="landingInfo1">Info 1</a>
    <div id="landingInfo1">
        More info here
    </div>
    <a href="#" data-div="landingInfo2">Info 2</a>
    <div id="landingInfo2">
        More info here
    </div>
</div>

这里有一个例子,这里有一个



这里有一个例子,这里有一个


nav ul {
  margin: 10px 20px;
  list-style: none;
}
nav li {
  background: #ddd;
  display: inline-block;
  padding: 3px 10px;
  cursor: pointer;
}
.info {
  position: absolute;
  display: none;
  top: 50px;
  left: 20px;
  width: 600px;
  height: 400px;
  padding: 10px;
  border: 1px dotted #ddd;
}
.info:nth-of-type(1) {
  display: block;
}
$(function() {
  $('nav li').click(function() {
    $('.info:nth-of-type('+$(this).data('rel')+')').fadeIn(400).siblings('.info').fadeOut(400);
  });
});