(function($) { "use strict"; $(window).on('load', function (e) { $('.avia-icongrid-flipbox').avia_sc_icongrid(); }); // ------------------------------------------------------------------------------------------- // Icongrid shortcode javascript // ------------------------------------------------------------------------------------------- $.fn.avia_sc_icongrid = function(options) { $('.avia-icongrid-flipbox li').on('touchend', function() { var current = $(this), container = current.closest('.avia-icongrid-flipbox'); if( current.hasClass('avia-hover') ) { container.find('li').removeClass( 'avia-hover' ); } else { container.find('li').removeClass( 'avia-hover' ); current.addClass( 'avia-hover' ); } }); return this.each(function() { var container = $(this), icongrid_id = '#' + $(this).attr('id'), methods; methods = { buildIconGrid: function () { this.setMinHeight($(icongrid_id + ' li article')); this.createFlipBackground($(icongrid_id + ' li')); }, setMinHeight: function (els) { if (els.length < 2) return; var elsHeights = new Array(); els.css('min-height', '0').each(function (i) { var current = $(this); var currentHeight = current.outerHeight(true); elsHeights.push(currentHeight); }); var largest = Math.max.apply(null, elsHeights); els.css('min-height', largest); }, createFlipBackground: function(els) { // if ( ! container.hasClass('avia-icongrid-flipbox') ) return; els.each(function(index,element){ var back = $(this).find('.avia-icongrid-content'); if (back.length > 0) { if ( $(this).find('.avia-icongrid-flipback').length <= 0 ) { var flipback = back.clone().addClass('avia-icongrid-flipback').removeClass('avia-icongrid-content'); back.after(flipback); } } }); } }; methods.buildIconGrid(); $(window).on( 'resize', function() { methods.buildIconGrid(); }); }); }; }(jQuery));