(function($){ $.fn.nicoslider = function(options) { var defaults = { start : 0, color : '#F6F2F1', sliderHeight : false }; var opts = $.extend({}, $.fn.nicoslider.defaults,defaults, options); return this.each(function(){ new nicoslide(this, opts); }); }; var nicoslide = function(slider, o) { var $slider = $(slider); $sliderWidth = $slider.parent().innerWidth(); $sliderCss = { 'width':$sliderWidth, 'background-color':o.color }; $slider.css($sliderCss); var ul = $slider.find("ul"); var ulWidth = 0; var liHeight = 0; $slider.find("li").each(function(){ ulWidth += $(this).width() + 5; ulWidth += parseInt($(this).css("padding-left")); ulWidth += parseInt($(this).css("padding-right")); ulWidth += parseInt($(this).css("margin-left")); ulWidth += parseInt($(this).css("margin-right")); liHeight = Math.max(liHeight,$(this).outerHeight()); }); //5 % of slider width $scrollWidth = Math.round(parseInt($sliderWidth) * parseFloat("0.05")); //min 30 px; if($scrollWidth < 30) { $scrollWidth = 30; } var $wrapperWidth = Math.round(parseInt($sliderWidth) - ( 2 * $scrollWidth )); if(ulWidth > $wrapperWidth) { ul.wrapAll("
"); $wrapper = $slider.find(".wrapper"); $ulHeight = ul.height(); $wrapper.width($wrapperWidth); $wrapper.height($ulHeight); $wrapperCss= { 'overflow':'hidden', 'float':'left', 'position':'relative' }; $wrapper.css($wrapperCss); ul.css('position', 'absolute'); ul.width(ulWidth); $slider.prepend(""); $slider.append(""); var rightScroll = $slider.find(".scrollright"); var leftScroll = $slider.find(".scrollleft"); rightScroll.append("