2013-11-20 9 views
2

我希望有人知道一种方式(或方向)来纠正jScrollPane在缩放变换时缺少的渲染支持。带变换的自定义JavaScript滚动条(jScrollPane)缩放比例错误

对于使用较大比例因子缩放的容器,滚动条通常会卡在底部。滚动条也倾向于加速远离鼠标拖拽以提示未命中计算。

我也试过这种方法与库“mCustomScrollbar”,并有相同的结果。这可能是一个jQuery问题。我明白,jQuery UI(主要拖动)也有变换缩放的问题。

下面是一个例子: http://jsfiddle.net/u8u3g/3/

#scene-1 { 
    width: 800px; 
    height: 500px; 
    transform-origin: 0 0; 
    -ms-transform-origin: 0 0; /* IE 9 */ 
    -webkit-transform-origin: 0 0; /* Safari and Chrome */ 
    transform: scale(0.8); 
    -ms-transform: scale(0.8); /* IE 9 */ 
    -webkit-transform: scale(0.8); /* Safari and Chrome */ 
} 

<div id="scene-1"> 
    <div class="container"> 
     <div class="inner"> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
      <p>lorem ipsume</p><br /> 
     </div> 
    </div> 
</div> 

$(function() { 
    $('.inner').jScrollPane(); 
}); 

我觉得JScrollPane中由于某种原因不能重新计算容器的内部高度已缩小了。

任何支持将不胜感激。

回答

2

我也遇到了同样的问题。问题是,应用“比例”功能时,$.width()始终返回原始值,但$.position()会根据比例返回。

问题本身,我决定完成插件。现在他可以确定当前的“尺度” ,并将其分为使用$.position()获得的所有值。这解决了这个问题。这是一个链接到插件bugfixed:jquery.jscrollpane.js([email protected]_345).zip

对于应用插件的元素,不要忘记添加position:relative。

+0

刚刚尝试链接到上面的帖子中的修补版本。它似乎没有工作。 – Charlie