只是使用標籤完成一個滾動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();
有人能指出我的方向是正確的,還是這是不可能的?認爲它可能必須用Ajax完成,但你可能會得到加載時間? – alwayslearning 2012-08-06 22:33:56