Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.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
Javascript 使用jQuery隐藏/显示元素_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery隐藏/显示元素

Javascript 使用jQuery隐藏/显示元素,javascript,jquery,Javascript,Jquery,我有以下网站结构 <div id="movies"> <a href=""> <div>content</div> </a> <a href=""> <div>content</div> </a> ... </div> 但这给了我未捕获的TypeError:对象0没有方法“sh

我有以下网站结构

<div id="movies">

     <a href="">
         <div>content</div>
     </a> 
     <a href="">
         <div>content</div>
     </a>
     ...    

</div>

但这给了我未捕获的TypeError:对象0没有方法“show”。你知道为什么吗?我需要更改/添加什么才能使想法生效?

您正在使用一些有点奇怪的做法:

不要对第n个子项使用循环;只需使用$movies a.slice10.hide。 使用hidden.eachfunction{…}而不是for in循环。在这里,你也可以使用.slice。 你不需要增加计数;始终为0,因此if子句始终为true。 您不能循环使用。。在里面因为它在属性上循环。在每个方法中使用jQuerys:

hidden.each(function() {
     var element = $(this);
     if(count <= 10)
        element.show();
});
hidden是一个jQuery对象。不要在上面循环使用..in。使用。每个


尝试下面这样一个简单的解决方案

$(function () {
   $("#movies a:gt(9)").hide(); 

   var $moviesA = $('#movies a');
   $('#more a').click(function(){
        var $visibleA = $("#movies a :visible"); //Edit: added a space
        $moviesA.slice($visibleA.length, $visibleA.length + 10).show();
   });
});
演示:

hidden.each(function(){
    if(count <= 10){
        $(this).show();
    }
});
$(function () {
   $("#movies a:gt(9)").hide(); 

   var $moviesA = $('#movies a');
   $('#more a').click(function(){
        var $visibleA = $("#movies a :visible"); //Edit: added a space
        $moviesA.slice($visibleA.length, $visibleA.length + 10).show();
   });
});