diff --git a/.travis.yml b/.travis.yml index 2d6cd8f..165d9ae 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,5 @@ language: node_js node_js: - - 0.8 + - 0.10 before_script: - npm install -g grunt-cli \ No newline at end of file diff --git a/examples/responsive - Mobile/images/Thumbs.db b/examples/responsive - Mobile/images/Thumbs.db new file mode 100644 index 0000000..71a4e15 Binary files /dev/null and b/examples/responsive - Mobile/images/Thumbs.db differ diff --git a/examples/responsive - Mobile/images/picture1.jpg b/examples/responsive - Mobile/images/picture1.jpg new file mode 100644 index 0000000..3efe300 Binary files /dev/null and b/examples/responsive - Mobile/images/picture1.jpg differ diff --git a/examples/responsive - Mobile/images/picture2.jpg b/examples/responsive - Mobile/images/picture2.jpg new file mode 100644 index 0000000..09a2654 Binary files /dev/null and b/examples/responsive - Mobile/images/picture2.jpg differ diff --git a/examples/responsive - Mobile/images/picture3.jpg b/examples/responsive - Mobile/images/picture3.jpg new file mode 100644 index 0000000..01d3a4d Binary files /dev/null and b/examples/responsive - Mobile/images/picture3.jpg differ diff --git a/examples/responsive - Mobile/images/picture4.jpg b/examples/responsive - Mobile/images/picture4.jpg new file mode 100644 index 0000000..fd7e557 Binary files /dev/null and b/examples/responsive - Mobile/images/picture4.jpg differ diff --git a/examples/responsive - Mobile/images/picture5.jpg b/examples/responsive - Mobile/images/picture5.jpg new file mode 100644 index 0000000..d85f02a Binary files /dev/null and b/examples/responsive - Mobile/images/picture5.jpg differ diff --git a/examples/responsive - Mobile/images/picture6.jpg b/examples/responsive - Mobile/images/picture6.jpg new file mode 100644 index 0000000..7823767 Binary files /dev/null and b/examples/responsive - Mobile/images/picture6.jpg differ diff --git a/examples/responsive - Mobile/images/picture7.jpg b/examples/responsive - Mobile/images/picture7.jpg new file mode 100644 index 0000000..1475d5a Binary files /dev/null and b/examples/responsive - Mobile/images/picture7.jpg differ diff --git a/examples/responsive - Mobile/index.html b/examples/responsive - Mobile/index.html new file mode 100644 index 0000000..aa18434 --- /dev/null +++ b/examples/responsive - Mobile/index.html @@ -0,0 +1,40 @@ + + + + + + + Tiny Carousel: A lightweight jQuery plugin + + + + + + + + +
+
+ +
+
+ + diff --git a/examples/responsive - Mobile/tinycarousel.css b/examples/responsive - Mobile/tinycarousel.css new file mode 100644 index 0000000..4a2bb11 --- /dev/null +++ b/examples/responsive - Mobile/tinycarousel.css @@ -0,0 +1,32 @@ +/* Tiny Carousel */ +#slider1 { width: 240px; margin: 10px auto; overflow:hidden; position: relative; } +#slider1 .viewport { height: 125px; overflow: hidden; position: relative; } +#slider1 .buttons { + background: #C01313; + border-radius: 35px; + display: block; + position: absolute; + top: 50%; + left: 0; + width: 35px; + height: 35px; + color: #fff; + font-weight: bold; + text-align: center; + line-height: 35px; + text-decoration: none; + font-size: 22px; +} +#slider1 .next { + right: 0; + left: auto; + top: 50%; +} +#slider1 .buttons:hover{ + color: #C01313; + background: #fff; +} +#slider1 .disable { visibility: hidden; } +#slider1 .overview { list-style: none; position: absolute; padding: 0; margin: 0; width: 240px; left: 0 top: 0; } +#slider1 .overview li{ float: left; margin: 0 20px 0 0; padding: 1px; height: 121px; border: 1px solid #dcdcdc; width: 236px;} +#slider1 .overview li img{margin: 0 auto; display: block;} diff --git a/lib/jquery.tinycarousel.js b/lib/jquery.tinycarousel.js index d62949a..1db4bea 100644 --- a/lib/jquery.tinycarousel.js +++ b/lib/jquery.tinycarousel.js @@ -27,6 +27,7 @@ , animation: true // false is instant, true is animate. , animationTime: 1000 // how fast must the animation move in ms? , infinite: true // infinite carousel. + , fullWidth: false // full width (mobile) } ; @@ -74,6 +75,11 @@ $overview.find(".mirrored").remove(); $slides = $overview.children(); + if(self.options.fullWidth){ + $container.width('100%'); + $slides.width($container.width()); + self.move(self.options.start || 0); + } viewportSize = $viewport[0]["offset" + sizeLabel]; slideSize = $slides.first()["outer" + sizeLabel](true); self.slidesTotal = $slides.length; @@ -82,7 +88,6 @@ $overview.append($slides.slice(0, slidesVisible).clone().addClass("mirrored")); $overview.css(sizeLabel.toLowerCase(), slideSize * (self.slidesTotal + slidesVisible)); - return self; }; diff --git a/lib/jquery.tinycarousel.min.js b/lib/jquery.tinycarousel.min.js index 4f184bf..2e07fa4 100644 --- a/lib/jquery.tinycarousel.min.js +++ b/lib/jquery.tinycarousel.min.js @@ -1,7 +1,7 @@ -/*! tinycarousel - v2.1.6 - 2014-07-07 +/*! tinycarousel - v2.1.6 - 2014-10-13 * http://www.baijs.com/tinycarousel * * Copyright (c) 2014 Maarten Baijs ; * Licensed under the MIT license */ -!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?a(require("jquery")):a(jQuery)}(function(a){function b(b,e){function f(){return i.update(),i.move(i.slideCurrent),g(),i}function g(){i.options.buttons&&(n.click(function(){return i.move(--t),!1}),m.click(function(){return i.move(++t),!1})),a(window).resize(i.update),i.options.bullets&&b.on("click",".bullet",function(){return i.move(t=+a(this).attr("data-slide")),!1})}function h(){i.options.buttons&&!i.options.infinite&&(n.toggleClass("disable",i.slideCurrent<=0),m.toggleClass("disable",i.slideCurrent>=i.slidesTotal-r)),i.options.bullets&&(o.removeClass("active"),a(o[i.slideCurrent]).addClass("active"))}this.options=a.extend({},d,e),this._defaults=d,this._name=c;var i=this,j=b.find(".viewport:first"),k=b.find(".overview:first"),l=0,m=b.find(".next:first"),n=b.find(".prev:first"),o=b.find(".bullet"),p=0,q={},r=0,s=0,t=0,u="x"===this.options.axis,v=u?"Width":"Height",w=u?"left":"top",x=null;return this.slideCurrent=0,this.slidesTotal=0,this.update=function(){return k.find(".mirrored").remove(),l=k.children(),p=j[0]["offset"+v],s=l.first()["outer"+v](!0),i.slidesTotal=l.length,i.slideCurrent=i.options.start||0,r=Math.ceil(p/s),k.append(l.slice(0,r).clone().addClass("mirrored")),k.css(v.toLowerCase(),s*(i.slidesTotal+r)),i},this.start=function(){return i.options.interval&&(clearTimeout(x),x=setTimeout(function(){i.move(++t)},i.options.intervalTime)),i},this.stop=function(){return clearTimeout(x),i},this.move=function(a){return t=a,i.slideCurrent=t%i.slidesTotal,0>t&&(i.slideCurrent=t=i.slidesTotal-1,k.css(w,-i.slidesTotal*s)),t>i.slidesTotal&&(i.slideCurrent=t=1,k.css(w,0)),q[w]=-t*s,k.animate(q,{queue:!1,duration:i.options.animation?i.options.animationTime:0,always:function(){b.trigger("move",[l[i.slideCurrent],i.slideCurrent])}}),h(),i.start(),i},f()}var c="tinycarousel",d={start:0,axis:"x",buttons:!0,bullets:!1,interval:!1,intervalTime:3e3,animation:!0,animationTime:1e3,infinite:!0};a.fn[c]=function(d){return this.each(function(){a.data(this,"plugin_"+c)||a.data(this,"plugin_"+c,new b(a(this),d))})}}); \ No newline at end of file +!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(a){function b(b,e){function f(){return i.update(),i.move(i.slideCurrent),g(),i}function g(){i.options.buttons&&(n.click(function(){return i.move(--t),!1}),m.click(function(){return i.move(++t),!1})),a(window).resize(i.update),i.options.bullets&&b.on("click",".bullet",function(){return i.move(t=+a(this).attr("data-slide")),!1})}function h(){i.options.buttons&&!i.options.infinite&&(n.toggleClass("disable",i.slideCurrent<=0),m.toggleClass("disable",i.slideCurrent>=i.slidesTotal-r)),i.options.bullets&&(o.removeClass("active"),a(o[i.slideCurrent]).addClass("active"))}this.options=a.extend({},d,e),this._defaults=d,this._name=c;var i=this,j=b.find(".viewport:first"),k=b.find(".overview:first"),l=0,m=b.find(".next:first"),n=b.find(".prev:first"),o=b.find(".bullet"),p=0,q={},r=0,s=0,t=0,u="x"===this.options.axis,v=u?"Width":"Height",w=u?"left":"top",x=null;return this.slideCurrent=0,this.slidesTotal=0,this.update=function(){return k.find(".mirrored").remove(),l=k.children(),i.options.fullWidth&&(b.width("100%"),l.width(b.width()),i.move(i.options.start||0)),p=j[0]["offset"+v],s=l.first()["outer"+v](!0),i.slidesTotal=l.length,i.slideCurrent=i.options.start||0,r=Math.ceil(p/s),k.append(l.slice(0,r).clone().addClass("mirrored")),k.css(v.toLowerCase(),s*(i.slidesTotal+r)),i},this.start=function(){return i.options.interval&&(clearTimeout(x),x=setTimeout(function(){i.move(++t)},i.options.intervalTime)),i},this.stop=function(){return clearTimeout(x),i},this.move=function(a){return t=a,i.slideCurrent=t%i.slidesTotal,0>t&&(i.slideCurrent=t=i.slidesTotal-1,k.css(w,-i.slidesTotal*s)),t>i.slidesTotal&&(i.slideCurrent=t=1,k.css(w,0)),q[w]=-t*s,k.animate(q,{queue:!1,duration:i.options.animation?i.options.animationTime:0,always:function(){b.trigger("move",[l[i.slideCurrent],i.slideCurrent])}}),h(),i.start(),i},f()}var c="tinycarousel",d={start:0,axis:"x",buttons:!0,bullets:!1,interval:!1,intervalTime:3e3,animation:!0,animationTime:1e3,infinite:!0,fullWidth:!1};a.fn[c]=function(d){return this.each(function(){a.data(this,"plugin_"+c)||a.data(this,"plugin_"+c,new b(a(this),d))})}}); \ No newline at end of file