jquery什么是将每个定位重置为默认值的最佳方法?

时间:2014-11-22 14:49:41

标签: javascript jquery

点击后我会看到一些缩略图,它会显示用户的所有作品,例如用户1有1个作品,用户2有6个作品。通过右边,我将根据用户有多少作品显示div。如果我点击用户1,它显示1工作,我退出并点击用户2,而不是6工作它只显示1,因为该功能采取在user1上设置,因为我没有重置..所以我想知道在退出时是否有将show / hide div重置为默认值的最佳实践,我现在知道的唯一解决方案是每次函数激活时调用.show,但似乎不是一个好方法的东西。请指教

实施例

$(function() {
    $(".img_thumb_holder").on('click', function() { 
        var index = $(this).index(); // get current index of clicked thumbnail, so i can call out the related name from captionArray via same index

        // what i did to solve the reseting, forcing it to show out each time the function runs
        $(".portfolio_thumbImg_holder").show();

        $.ajax({
            type: "POST",
            dataType: "json",
            data: ({id: idArray[index]}), // pass the name of clicked holder into php to query
            url: "CMS/PHP/retrieveAuthorWorks.php",
            success: function(data) {   
                console.log("Array consist of " + data)
                $('.portfolio_thumbImg_holder img').removeAttr("src");
                linksArray=[];  
                titleArray=[];  
                descArray=[];   
                $(".full_image_desc .title").html(data[0].title);
                $(".full_image_desc .info").html(data[0].desc);
                $('.portfolio_thumbImg_holder img').each(function(index, element) {                                                     
                      if (data[index]) {
                          linksArray.push("http://localhost/testdatabase/cms/" + data[index].links);
                          $(element).attr("src", linksArray[index]);
                          titleArray.push(data[index].title);
                          $(element).attr("title", titleArray[index]);
                          descArray.push(data[index].desc);
                          $(element).attr("desc", descArray[index]);
                        }
                }); 
                // check how many divs without the image data, and hide it
                $(".portfolio_thumbImg_holder img:not([src])").parent().hide();
            }
        });
    });
});

0 个答案:

没有答案