1jQuery.gsliders = { 2 'pane_selector':'.gpane', 3 'tab_selector':'.ghandler', 4 'active_pane_class':'expand', 5 'active_tab_class':'active', 6}; 7 8(function($){ 9 $.fn.gsliders = function(options, params){ 10 if(this.length > 0){ 11 if($.type(params) === 'undefined' && $.type(options) === 'object'){ 12 params = options; 13 } 14 15 if($.type(options) === 'undefined' || $.type(options) === 'object'){ 16 params = $.extend(true, {}, $.gsliders, params); 17 return this.each(function(){ 18 if(!$(this).data('gsliders')){ 19 $(this).data('gsliders', new GSliders(this, params)); 20 } 21 }); 22 } 23 24 if($.type(options) === 'string'){ 25 params = $.extend(true, {}, $.gsliders, params); 26 27 var sliders = $(this).data('gsliders'); 28 29 switch (options){ 30 case 'open': 31 return sliders.open(); 32 case 'close': 33 return sliders.close(); 34 case 'get': 35 return sliders.get(); 36 } 37 } 38 } 39 } 40 41 var GSliders = function(elem, params){ 42 this.element = elem; 43 this.settings = params; 44 45 this.init(); 46 }; 47 48 GSliders.prototype = { 49 init: function(){ 50 var sliders = this; 51 //hide pans without the active class 52 $(sliders.element).find(sliders.settings.pane_selector).not('.'+sliders.settings.active_pane_class).slideUp(); 53 $(sliders.element).find(sliders.settings.pane_selector).filter('.'+sliders.settings.active_pane_class).slideDown(); 54 55 $(sliders.element).on('click', sliders.settings.tab_selector, function(e){ 56 var $a = $(this); 57 e.preventDefault(); 58 //check target 59 if($a.data('target')){ 60 var target = $a.data('target'); 61 }else{ 62 var target = $a.attr('href'); 63 } 64 //activate pane 65 $(sliders.element).find(sliders.settings.pane_selector).slideUp(); 66 $(sliders.element).find(sliders.settings.pane_selector).removeClass(sliders.settings.active_pane_class); 67 $(sliders.settings.pane_selector + target).slideDown(); 68 $(sliders.settings.pane_selector + target).addClass(sliders.settings.active_pane_class); 69 }); 70 }, 71 72 get: function(){ 73 var sliders = this; 74 return sliders; 75 }, 76 77 show: function(slider_link){ 78 var sliders = this; 79 slider_link.trigger('click'); 80 }, 81 }; 82}(jQuery));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.