2012-03-17 29 views
1

水平なjScrollPaneを再初期化する際に問題が発生します。ページに4つのイメージがロードされ、ユーザーがパネル内をスクロールすると、次の4つのイメージが表示されますが、次のイメージはそこにありますが、.jspペインのサイズはそのままであるため、バーをもう一度スクロールします。ここで水平スクロールのjScrollPane autoReinitialiseが機能しない

はコードです:

$(function() 
     { 
      var pane = $('.scroll-pane'); 
      pane.jScrollPane({showArrows: true,autoReinitialise: true}); 
      var contentPane = pane.data('jsp').getContentPane(); 
      var api = pane.data('jsp'); 
      var $rowItems = $('<p></p>'); 
      var showItems = 4; 
      var startItem = 0; 
      var itemWidth = 100; 

      contentPane.append($rowItems) 

      getThumbnails(startItem); 

      pane.scroll(function(){ 
       var paneWidth = $(this).width(); 
       var contentWidth = $rowItems.width(); 
       var scrollPosition = Math.abs(parseInt($('.jspPane').css('left'))); 
       console.log(contentWidth - paneWidth - scrollPosition); 
       if ((contentWidth - paneWidth - scrollPosition) < 10){      
        startItem = startItem + showItems; 
        getThumbnails(startItem); 
       } 
      }) 

      function getThumbnails(n){ 
       $.ajax({ 
        url : 'items.xml', 
        success : function(data){     
         for(var i = n; i< n + showItems; i++){ 
          $rowItems.append('<a href="'+ $(data).find('item').eq(i).attr('thumb') +'" id="pic'+ i +'"></a>'); 
          loadImageThumb($(data).find('item').eq(i).attr('thumb'), $(data).find('item').eq(i).attr('imageUrl'),$(data).find('item').eq(i).find('description').text(), i);     

         } 

        }    
       }) 
      } 

      function loadImageThumb(thumb, img, description, i){      
       var image = new Image();              
       $(image).load(function(){ 
        var height = 80, 
         $pic = $('#pic'+ i, $rowItems), 
         imgURL = $pic.attr('href');         
        $pic.attr('href',imgURL);       
        $(this).appendTo($pic).hide().fadeIn('slow'); 

       }).attr('src', thumb); 

      } 


     }); 

私は、垂直スクロールのために同様のコードを使用し、それが仕事をしました。 おかげさまでありがとうございました。

答えて

1

私の問題の解決策が見つかりました。 すべての要素の幅が必要です。

+0

もっと明確になりますか?あなたはどういう意味ですか? – zur4ik

関連する問題