1(function($) { 2 "use strict"; 3 4 UNCODE.widgets = function() { 5 var widget_collapses = $('.widget-collapse'); 6 7 widget_collapses.each(function(){ 8 var widget_collapse = $(this), 9 widget_title = widget_collapse.find('.widget-title'), 10 widget = widget_title.closest('.widget'), 11 content = widget.children().not('.widget-title'), 12 setCTA; 13 14 if ( widget_collapse.hasClass( 'widget-tablet-collapse-open' ) && UNCODE.wwidth <= UNCODE.mediaQuery && UNCODE.wwidth > UNCODE.mediaQueryMobile ) { 15 widget_title.toggleClass('open'); 16 } 17 18 widget_title.each(function() { 19 var _this = $(this); 20 var content = _this.closest('.widget').find('.widget-collapse-content'); 21 22 $(window).on('load resize', function(){ 23 clearRequestTimeout(setCTA); 24 setCTA = requestTimeout( function() { 25 if ( content.is(':visible') ) { 26 _this.addClass( 'open' ); 27 } else { 28 _this.removeClass( 'open' ); 29 } 30 }, 10 ); 31 }) 32 33 _this.on( 'click', function(){ 34 35 // Get content of :after element (+ icon) to check the visibility 36 var icon_content = window.getComputedStyle(_this[0], ':after').getPropertyValue('content'); 37 38 if (icon_content === 'none' || !icon_content) { 39 return false; 40 } 41 42 _this.toggleClass('open'); 43 var isOpen = _this.hasClass('open'), 44 hasBorder = _this.closest('.widget-no-separator').length ? 9 : 27; 45 content.animate({ 46 height: 'toggle', 47 padding: 'toggle', 48 opacity: 'toggle', 49 top: isOpen ? 0 : hasBorder 50 }, { 51 duration: 400, 52 easing: "easeInOutCirc", 53 }); 54 55 return false; 56 57 }); 58 }); 59 }); 60 61 var $widgets_without_title = $('.collapse-init').removeClass('collapse-init'); 62}; 63 64 65})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.