// jQuery Nyan Cat Slider PlugIn jQuery.fn.nyanslider = function(options) { // apply to each matches element return this.each(function() { // add css class and tail code jQuery(this).addClass('ui-nyanslider'); jQuery(this).prepend('
'); // create original slider jQuery(this).slider(options); // adopt tail length at startup if (jQuery(this).slider('option','value') > jQuery(this).slider('option','min')) nyansliderTail(jQuery(this)); // slide/slidechange (on drag/click) event jQuery(this).bind('slide slidechange', function() { nyansliderTail(jQuery(this)); }); }); // adopt tail length function nyansliderTail(obj) { obj.children('.ui-slider-tail').width((obj.slider('option','value')-obj.slider('option','min')) / (obj.slider('option','max')-obj.slider('option','min')) * obj.width()); } }