PluginProbe
bBlocks – Essential Gutenberg Blocks & Patterns Collection / 2.1.7
bBlocks – Essential Gutenberg Blocks & Patterns Collection v2.1.7
2.1.7 2.1.6 2.1.5 2.1.4 2.1.3 2.1.2 2.1.1 2.1.0 2.0.43 2.0.42 2.0.41 2.0.40 2.0.39 2.0.38 trunk 1.0 1.1 1.2 1.3 1.4 1.5 1.5.1 1.5.2 1.5.3 1.5.4 All 107 releases
b-blocks / assets / js / zebra_accordion.min.js

zebra_accordion.min.js in bBlocks – Essential Gutenberg Blocks & Patterns Collection 2.1.7, at assets/js/zebra_accordion.min.js

1 lines 3.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 !function(e){"use strict";e.Zebra_Accordion=function(t,s){var o={animate_opacity:!0,collapsible:!1,expanded_class:"Zebra_Accordion_Expanded",hide_speed:400,scroll_speed:600,show_speed:400,show:0,toggle_on_mouseover:!1,onBeforeClose:null,onBeforeOpen:null,onClose:null,onOpen:null},n=this,i=null,l=null,a=e(window),r=[],d=[],g=function(){d=[],l.each(function(t){var s=e(this),o={style:s.attr("style")};s.css({visibility:"hidden",display:"block"}),d.push(e.extend(o,{height:s.height(),outerHeight:s.outerHeight(),paddingTop:p(s.css("paddingTop")),paddingBottom:p(s.css("paddingBottom")),marginTop:p(s.css("marginTop")),marginBottom:p(s.css("marginBottom")),borderTopWidth:p(s.css("borderTopWidth")),borderBottomWidth:p(s.css("borderBottomWidth")),boxSizing:s.css("boxSizing"),element:s})),n.hide(t,!0)})},h=function(t){r=[],i.each(function(s){var o=e(this),i=!n.settings.collapsible&&n.settings.toggle_on_mouseover?"mouseover":"click";r.push({height:o.outerHeight(),style:o.attr("style"),element:o}),void 0===t&&o.on(i,function(){n.show(s)})})},p=function(e){return e=parseInt(e,10),isNaN(e)?0:e};n.show=function(t,s,o){if(!isNaN(parseFloat(t))&&t>=0&&t<=d.length-1){var l=d[t],g=r[t].element,h=l.element,p=!1;if(n.settings.collapsible&&g.hasClass(n.settings.expanded_class))return n.hide(t,s);if(n.settings.collapsible||i.each(function(e){if(r[e].element.hasClass(n.settings.expanded_class)&&(e!==t||0===n.settings.collapsible))return e===t&&0===n.settings.collapsible&&(p=!0),n.hide(e,s),!1}),p)return!1;n.settings.onBeforeOpen&&"function"==typeof n.settings.onBeforeOpen&&n.settings.onBeforeOpen(t,g,h),g.addClass(n.settings.expanded_class),h.css("display","block").stop().animate({height:"border-box"===l.boxSizing?l.outerHeight:l.height,paddingTop:l.paddingTop,paddingBottom:l.paddingBottom,marginTop:l.marginTop,marginBottom:l.marginBottom,opacity:1},s?0:n.settings.show_speed,function(){if(n.settings.onOpen&&"function"==typeof n.settings.onOpen&&n.settings.onOpen(t,g,h),!o){var s=Math.round(g.offset().top),i=s+r[t].height+l.outerHeight,d=a.height(),p=a.scrollTop(),c=null;i>d+p&&(c=i-d)>s&&(c=s),s<p&&(c=s),c&&e("html, body").animate({scrollTop:c},n.settings.scroll_speed)}})}},n.hide=function(e,t){if(!isNaN(parseFloat(e))&&e>=0&&e<=d.length-1){var s=r[e].element,o=d[e],i=o.element;n.settings.onBeforeClose&&"function"==typeof n.settings.onBeforeClose&&n.settings.onBeforeClose(e,s,i),s.removeClass(n.settings.expanded_class),i.stop().css({borderTopWidth:0,borderBottomWidth:0}).animate({height:0,paddingTop:0,paddingBottom:0,marginTop:0,marginBottom:0,opacity:n.settings.animate_opacity?0:1},t?0:n.settings.hide_speed,function(){n.settings.onClose&&"function"==typeof n.settings.onClose&&n.settings.onClose(e,s,i),i.css({display:"none",visibility:"visible",borderTopWidth:o.borderTopWidth,borderBottomWidth:o.borderBottomWidth})})}},n.settings={},function(){n.settings=e.extend({},o,s);var p,c=e(t);if(i=e("dt",c),l=e("dd",c),h(),g(),!1!==n.settings.show)if(n.settings.collapsible&&(e.isArray(n.settings.show)||!0===n.settings.show))if(!0===n.settings.show)for(p=0;p<i.length;p++)n.show(p,!0,!0);else e.each(n.settings.show,function(e){n.show(n.settings.show[e],!0,!0)});else n.show(n.settings.show,!0,!0);a.on("resize",function(){var t=[];i.each(function(e){var s=r[e].element;s.hasClass(n.settings.expanded_class)&&t.push(e),s.attr("style",r[e].style)}),h(!1),l.each(function(e){d[e].element.attr("style",d[e].style||"")}),g(),t.length>0&&e.each(t,function(e){n.show(t[e],!0,!0)})})}()}}(jQuery);