2012-08-06 119 views
0

只是使用標籤完成一個滾動div,但試圖找出一種方式,使得例如你點擊鏈接4,而不是腳本滾動所有div到達4號,我希望它滾動出來DIV1和DIV4滾動可能在未滾動所有div的情況下滑動下一個div?

爵士小提琴:http://jsfiddle.net/cC4tU/1/

jQuery的

$.extend($.easing, 
{ 
    easeInOutQuad: function (x, t, b, c, d) { 
     if ((t/=d/2) < 1) return c/2*t*t + b; 
     return -c/2 * ((--t)*(t-2) - 1) + b; 
    }, 
    easeInOutElastic: function (x, t, b, c, d) { 
     var s=1.70158;var p=0;var a=c; 
     if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5); 
     if (a < Math.abs(c)) { a=c; var s=p/4; } 
     else var s = p/(2*Math.PI) * Math.asin (c/a); 
     if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; 
     return a*Math.pow(2,-10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)*.5 + c + b; 
    } 

    }); 
//EXPAND PAGE DIV CONTENT 
$(".tab_item").hover(function(){ 
     var background = $(this).parent().find(".moving_bg"); 
     $(background).stop().animate({ 
      left: $(this).position()['left'] 
     }, { 
      duration: 700, easing: 'easeInOutElastic' 
     }); 
    }); 

var TabbedContent = { 
    init: function() {  
     $(".tab_item").click(function() { 
      var background = $(this).parent().find(".moving_bg"); 
      $(background).stop().animate({ 
       left: $(this).position()['left'] 
      }, { 
       duration: 500 
      }); 
      TabbedContent.slideContent($(this)); 
     }); 
    }, 

    slideContent: function(obj) { 
     var margin = $(obj).parent().parent().find(".slide_content").width(); 
     margin = margin * ($(obj).prevAll().size() - 1); 
     margin = margin * -1; 
     $(obj).parent().parent().find(".tabslider").stop().animate({ 
      marginLeft: margin + "px" 
     }, { 
      duration: 1500, easing: 'easeInOutQuad' 
     }); 
    } 
} 
TabbedContent.init(); 
+0

有人能指出我的方向是正確的,還是這是不可能的?認爲它可能必須用Ajax完成,但你可能會得到加載時間? – alwayslearning 2012-08-06 22:33:56

回答

1

Dwhizz,你想要什麼當然是可能的。

我不打算爲你寫,但據我所知,所有更改將在slideContent

策略:

  • 隱藏除了基於兩個可見的項目現有的和新
  • 計算保證金所有tabslider元素
  • 動畫(可能沒有變化)
  • 記住下一次電流tabslider元素。
+0

好的謝謝你的指導方針將開始工作,不知道我是否能夠擠出更多的權力!看起來很複雜 – alwayslearning 2012-08-07 00:47:56

+0

Dwhizz,我說我不會爲你寫,但是......如果你想作弊,請參閱** [你的小提琴的這個更新](http://jsfiddle.net/cC4tU/3/)* *。計算利潤率比我想象的要困難。注意我對HTML和CSS以及javascript進行了更改。 – 2012-08-07 02:38:44

+0

LMAO,哈哈,早晨6點整夜都在努力,不要以爲我會有那樣的工作,但是對於你是怎麼做的,這是一個很棒的開眼界,謝謝你,先生。現在再研究它,再次感謝 – alwayslearning 2012-08-07 04:51:35