2014-07-18 123 views
-1

我有幾個隱藏的divs(class =「page」),它們在點擊鏈接時顯示並生成動畫。這些div使用mCustomScrollbar插件包含可水平滾動的div(class =「content」)。第一次隱藏div顯示滾動條處於原始位置(完全左滾動)。下一次顯示隱藏的div時,滾動條會完全滾動到右側,而不是位於原始位置。我嘗試過使用防止Div從滾動權?

$('.content').scrollLeft(0); 

當鏈接被點擊時,爲了將這個類的所有實例都滾動回家。這沒有奏效,API文檔指出.scrollLeft()不適用於隱藏的div,所以我只在被暴露的.content div的id上調用.scrollLeft(),確保放置方法打電話後。頁面div已被更改爲顯示:塊

任何人都可以闡明如何確保.content div完全左滾動顯示嗎?以下是該頁面的鏈接:http://cdhbrooksdesign.com/home.html

單擊「製作」選項卡一次以顯示,看起來正確。再次單擊以收回,然後單擊第三次,滾動部分一直滾動到右側。

非常感謝任何可以幫助的人。

+1

您應該爲此創建小提琴所以很容易調試:http://jsfiddle.net/ – mtaube

+0

你的代碼不能正常工作,這裏的[的jsfiddle](http://jsfiddle.net/ cMmq9 /) –

+0

沒有我已下載和鏈接的插件,jsfiddle將無法正常工作。我將努力讓jsfiddle運行,但同時,任何建議都會受到歡迎 – cdhb

回答

0

隨時擴展需要隱藏的DIV,加入行:

$('.content').mCustomScrollbar("disable",true); 
$('.content').mCustomScrollbar("update"); 

的伎倆。以下是點擊功能。希望別人也能找到這個有用的。

$(document).ready(function(){ 
     $("#current").click(function(){ 
      if (currentIndex == 1){ 
       retractPage(); 
      } 
      else if (sumIndex() !=0){ 
       retractExtend("currentPage", "current"); 
       currentIndex=1; 
       $('.content').mCustomScrollbar("disable",true); 
       $('.content').mCustomScrollbar("update"); 
      } 
      else { 
       extendPage("currentPage", "current"); 
       currentIndex=1; 
       $('.content').mCustomScrollbar("disable",true); 
       $('.content').mCustomScrollbar("update"); 
      } 

     });