2010-09-13 10 views
0

J'ai un qui se fait pagination comme ceci:la page Pagination enregistre la page pour cookies

this.pagination = function(limit, length){ 
     //number of pages 
     var nrpages = Math.ceil(length/limit); 
     var currPage = this.pagingcurrPage; 

     console.log('l- '+length); 
     console.log('p- '+nrpages); 
     console.log('c- '+currPage); 
     $.cookie('presssection-cp',currPage); 
     var thisSection = this; 

     //active class for first page 
     if(currPage == 1){ 
      var activeClass = ' class="active"'; 
     } 
     else{ 
      var activeClass = ''; 
     } 

     var output = '<li class="page-item"><a'+activeClass+' href="0">1</a></li>'; 

     if(nrpages > 1){ 
      if(nrpages > 7){ 
       if(currPage <= 4){ 
        for(i=2; i < 7; i++){ 
         offset = (i-1) * limit; 
         //active class for current page 
         if((currPage-1) * limit == offset){ 
          activeClass = ' class="active"'; 
         } 
         else{ 
          activeClass = ''; 
         } 
         output += '<li class="page-item"><a'+activeClass+' href="'+offset+'">'+i+'</a></li>'; 
        } 
        output += '<li class="rightDot page-item">...</li>'; 
       } 
       else if(currPage >= (nrpages - 4)){ 
        var pageFrom = nrpages - 5; 
        var pageTo = nrpages; 

        output += '<li class="leftDot page-item">...</li>'; 
        for(i=pageFrom; i < pageTo; i++){ 
         offset = (i-1) * limit; 
         //active class for current page 
         if((currPage-1) * limit == offset){ 
          activeClass = ' class="active"'; 
         } 
         else{ 
          activeClass = ''; 
         } 
         output += '<li class="page-item"><a'+activeClass+' href="'+offset+'">'+i+'</a></li>'; 
        } 
       } 
       else{ 
        var pageFrom = currPage - 2; 
        var pageTo = pageFrom + 5; 

        output += '<li class="leftDot page-item">...</li>'; 
        for(i=pageFrom; i < pageTo; i++){ 
         offset = (i-1) * limit; 
         //active class for current page 
         if((currPage-1) * limit == offset){ 
          activeClass = ' class="active"'; 
         } 
         else{ 
          activeClass = ''; 
         } 
         output += '<li class="page-item"><a'+activeClass+' href="'+offset+'">'+i+'</a></li>'; 
        } 
        output += '<li class="rightDot page-item">...</li>'; 
       } 
      } 
      else{ 
       for(i=2; i < nrpages; i++){ 
        if(i==1){ 
         offset = 0; 
        } 
        else{ 
         offset = (i-1) * limit; 
        } 
        if(currPage == i){ 
         activeClass = ' class="active"'; 
        } 
        else{ 
         activeClass = ''; 
        } 
        output += '<li class="page-item"><a'+activeClass+' href="'+offset+'">'+i+'</a></li>'; 
       } 
      } 

      //active class for last page 
      if(currPage == nrpages){ 
       activeClass = ' class="active"'; 
      } 
      else{ 
       activeClass = ''; 
      } 
      output += '<li class="page-item"><a'+activeClass+' href="'+(nrpages-1)*limit+'">'+nrpages+'</a></li>'; 
      $('#pressItemsPagination ul.pager').html(output); 
      $('#pressItemsPagination ul.pager').show(); 
     } 
     else{ 
      $('#pressItemsPagination ul.pager').hide(); 
     } 

      //debugTime('section '+this.sectionId+' init start'); 
     var html = ''; 

     html += '<div id="'+this.sectionId+'" class="tSection '+this.type+' '+this.section+'">'; 

      html += '\ 
      <div class="clearFix">\ 
       <ul class="tPaging pagination" style="float: left;">&nbsp;</ul>\ 
      </div>'; 
     html += '</div>' 

     //register pagination clicks 
     $('#pressItemsPagination ul.pager li a').live('click',function() { 

      //get the offset 
      var offset = $(this).attr('href'); 

      if(offset.indexOf('/')) { 
       offset = offset.substr(offset.lastIndexOf('/')+1); 
      } 

Comment puis-je faire ce script pour rappeler l'utilisateur est où? Si l'utilisateur clique sur la pagination à la page 2, puis sur une page différente et retourne à la page où se trouve la pagination, il serait bien qu'il se souvienne que l'utilisateur était à la page 2. Maintenant, il revient à la page 1. avoir currPage enregistré sur cookie atm. Est-ce exact? Quoi d'autre j'ai besoin de changer dans ce script afin qu'il se souvienne de la page de pagination.

+2

Il n'y a pas assez de code ici. Sarcasme. – jrharshath

Répondre

0

Vous devriez enregistrer la page actuelle chaque fois qu'elle est commutée et lire le cookie sur le document prêt. Si le cookie n'est pas défini, ne faites rien. Sinon, accédez à la page enregistrée. Je recommande de jeter un oeil à cookie functions pratique de quirksmode.org.

+0

Comment accéder à la page enregistrée? C'est le problème lol: D – wilhemsson

+0

Vous demandez sur _how to remember_ où l'utilisateur est (_ "Comment puis-je faire ce script pour se souvenir de l'endroit où l'utilisateur est?" _ Et _ "J'ai currPage enregistré sur cookie atm. ? "_ sont les seules questions ici). Vous devriez clarifier cela. De plus, il y a tellement de code dans votre post, que personne ne veut le lire (comme Here Be Wolves l'a souligné). Vous devriez réduire le code aux parties essentielles. – jwueller