2

div如果元素不止一个,我们如何删除 ?下面是我的页面结构。

<div class='mydiv'></div>
<div class='mydiv'></div>
<div class='mydiv'></div>
<div class='mydiv'></div>
<div class='mydiv'></div>
<div class='mydiv'></div>

var countdiv = $(".mydiv").length;
if(countdiv > 1){
  var result = countdiv - 1; //answer is 5
  //remove the 5 remaining divs so that only one will appear in the page. 
}

谢谢,感谢您的帮助。

4

6 回答 6

3

You can use .slice()

$('.mydiv').slice(1).remove()

Demo: Fiddle

于 2013-11-11T05:43:05.660 回答
2

尝试这个:

var countdiv = $(".mydiv").length;
if(countdiv > 1){
  $(".mydiv:gt(0)").remove();//all .mydiv other than first will be removed
}
于 2013-11-11T05:40:38.643 回答
2

Try to use remove() with :gt-selector like,,

var countdiv = $(".mydiv").length;
if(countdiv > 1){
  $(".mydiv:gt(0)").remove();
}

Demo

于 2013-11-11T05:41:34.477 回答
2

Can you try this,

Simply :

  $(".mydiv:gt(0)").remove();

Another method:

            <script type="text/javascript">
                    $(function(){                                                               
                        var countdiv = $(".mydiv").length;
                         var i=1;
                        $(".mydiv").each(function(){

                            if(countdiv!=i){
                                $(this).remove();
                            }
                            i++;

                        });


                    });
            </script>
于 2013-11-11T05:41:34.873 回答
1

试试这个代码:

方法一:使用 CSS 给

    .mydiv{
      display: none;
    }
    .mydiv:first-child{
      display: block;
    }

*方法二:使用 JS *

.mydiv{
          display: none;
        }

$( ".mydiv:first-child" ).show();
于 2013-11-11T06:06:52.143 回答
0

这应该这样做:

$(".mydiv").slice(1).remove();

如果有超过 1 个“.mydiv”元素,它将保留第一个元素并将 remove 应用于其余元素。

于 2013-11-11T05:41:21.930 回答