2011-09-05 3 views
0

Comme tout le monde a toujours ajouter un problème avec toujours être en mesure de faire défiler les limites de la div que vous faites défiler.Jquery ScrollPane

Pour des raisons légales je ne peux malheureusement pas afficher le code.

Répondre

0

En fait, il est avéré être le fait que j'utilisais jquery 1.2.6, je devais passer à jquery 1.3.2 pour résoudre mon problème. Merci pour vos commentaires Ace Trajkov

1

Si je le suppose correctement, vous utilisez jScrollPane et le conteneur de défilement s'étend au-delà des dimensions de la fenêtre lors du redimensionnement de la fenêtre. Il y a un bug dans le code où la largeur et la hauteur sont calculées pour le contenu et le conteneur. Fondamentalement, vous devez réaffecter la largeur et la hauteur sur le redimensionnement de la fenêtre. Voici un exemple de travail:

var oldWindowHeight = $(window).height(); 
var oldWindowWidth = $(window).width(); 
$(function() { 
    $('.tdMiddleRightContent').each(function() { 
     $(this).jScrollPane({ 
      showArrows: true, 
      hideFocus: true 
     }); 
     var api = $(this).data('jsp'); 
     var throttleTimeout; 
     $(window).bind('resize', function() { 
      var newWindowHeight = $(window).height(); 
      if ((newWindowHeight - oldWindowHeight) < 0) { 
       $(".jspContainer").height($(".jspContainer").height() + (newWindowHeight - oldWindowHeight)); 
      } 
      var newWindowWidth = $(window).width(); 
      if ((newWindowWidth - oldWindowWidth) < 0) { 
       $(".jspContainer").width($(".jspContainer").width() + (newWindowWidth - oldWindowWidth)); 
      } 
      if ($.browser.msie) { 
       if (!throttleTimeout) { 
        throttleTimeout = setTimeout(function() { 
         api.reinitialise(); 
         throttleTimeout = null; 
        }, 50); 
       } 
      } else { 
       api.reinitialise(); 
      } 
      oldWindowHeight = $(window).height(); 
      oldWindowWidth = $(window).width(); 
     }); 
    }); 
});