Flexitabs 1.1-jQuery用のシンプルで柔軟なタブスクリプト

タブの基本機能を提供するjQueryスクリプトは軽量で非常に柔軟です。 また、スクリプトには表現(デザイン)を含めないでください。また、DOMは有効である必要があります。 DOMには架空の属性はありません。



  1. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  2. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  3. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  4. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  5. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  6. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  7. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  8. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  9. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  10. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  11. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  12. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  13. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  14. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  15. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  16. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  17. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  18. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  19. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  20. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  21. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  22. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  23. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  24. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  25. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  26. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  27. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  28. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  29. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  30. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  31. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  32. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  33. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  34. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  35. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  36. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  37. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  38. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  39. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  40. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  41. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  42. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  43. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  44. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  45. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  46. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  47. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  48. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  49. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  50. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  51. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  52. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  53. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  54. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  55. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  56. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  57. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  58. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  59. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  60. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  61. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  62. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  63. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  64. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  65. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  66. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  67. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  68. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  69. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  70. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);



  71. ( function ($) { var Flexitabs = function (options) { this .defaults = { //CSS-selectors of target elements in DOM for unobtrusive attaching containerSelector: '.flexitabs' , tabSelector: '.tab' , contentSelector: '.content' , //CSS classes for indicate active and inactive tabs and contents of tabs activeLinkClass: 'active' , //also class for marking initial active tab in your HTML inactiveLinkClass: 'inactive' } this .initialize = function () { var flexitabs_object = this ; $( this .containerSelector).each( function () { var storage = {}; storage. object = this ; //finding tabs and it's contents in DOM storage.tabs = $.grep($( this ).find(flexitabs_object.tabSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); storage.contents = $.grep($( this ).find(flexitabs_object.contentSelector), function (tab) { if ($(tab).parents(flexitabs_object.containerSelector)[0] == storage. object ) return true ; }); if (storage.tabs.length <= storage.contents.length) { //avoiding nonfunctional tabs var active = 0; var container = $( this ); $(storage.tabs).each( function (i) { //initializing storage for tabs and contents var tab_storage = {}; var content_storage = {}; tab_storage. object = content_storage. object = container; tab_storage.index = content_storage.index = i; //bind click handler to tabs $( this ).click( function () { flexitabs_object.activate( this ); }); //preselecting active tab from DOM if ($( this ).hasClass(flexitabs_object.activeLinkClass)) active = i; //storing data in jQuery data-storages, assigned to DOM-elements $(storage.tabs[i]).data( 'Flexitabs' , tab_storage); $(storage.contents[i]).data( 'Flexitabs' , content_storage); }); storage.active = active; container.data( 'Flexitabs' , storage); //storing whole tabulator data in container storage flexitabs_object.activate(storage.tabs[active]); //initial tab activation } }); } this .activate = function (tab) { var index = $(tab).data( 'Flexitabs' ).index; var storage = $(tab).data( 'Flexitabs' ). object ; var tabs_storage = $(storage).data( 'Flexitabs' ).tabs; var contents_storage = $(storage).data( 'Flexitabs' ).contents; //deactivation of all tabs and contents $(tabs_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); $(contents_storage).removeClass( this .activeLinkClass).addClass( this .inactiveLinkClass); //activation of current clicked tab $(tab).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); $(contents_storage[index]).removeClass( this .inactiveLinkClass).addClass( this .activeLinkClass); storage.active = index; } $.extend( this , this .defaults, options); this .initialize(); }; $( function () { new Flexitabs(); }) })(jQuery);





スクリプトは非破壊的で、いわゆる 目立たない。 CSSセレクターでDOMにしがみついています。 作成するときに、オプションを使用してJSONを渡すことができるため、デフォルトのセレクターをオーバーライドできます。 柔軟性は、さまざまなオプションを使用してページ上に任意の数のFlexitabs「クラス」オブジェクトを作成することです。



jQueryを接続した後、ヘッドのスクリプトを接続するだけで十分です。 そして、以下のレイアウトはよりシンプルなHTMLの例です。

  1. < div class = "flexitabs" >
  2. < div class = "tabs" >
  3. < div class = "tab" > Tab1 </ div >
  4. < div class = "tab" > Tab2 </ div >
  5. < div class = "tab" > Tab3 </ div >
  6. </ div >
  7. < div class = "contents" >
  8. < div class = "content" > Content1 </ div >
  9. < div class = "content" > Content2 </ div >
  10. < div class = "content" > Content3 </ div >
  11. </ div >
  12. </ div >


この例は意味的にはより正確ですが、レイアウトはより困難です:

  1. < スクリプト タイプ = "text / javascript" >
  2. $( 関数 (){
  3. 新しい Flexitabs({
  4. tabSelector: 'dt'
  5. contentSelector: 'dd'
  6. });
  7. });
  8. </ スクリプト >
  9. < dl class = "flexitabs" >
  10. < dt > Tab1 </ dt >
  11. < dd > Content1 </ dd >
  12. < dt > Tab2 </ dt >
  13. < dd > Content2 </ dd >
  14. < dt > Tab3 </ dt >
  15. < dd > Content3 </ dd >
  16. </ dl >


CSSに最低限必要なのは、ディスプレイを記述することです。タブコンテンツのあるブロックには何もありません。「非アクティブ」クラスがあります。



UPD 1.1:ネストされたタブのサポートが追加されました-HTMLはまったく同じで、機能はありません。機能します:)すぐに例があります...ホスティングの問題を解決する方法。



All Articles