diff -r 000000000000 -r d970ebf37754 enmi12/glossaire/_includes/option-set-buttons.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/enmi12/glossaire/_includes/option-set-buttons.js Wed Nov 06 03:21:17 2013 +0000 @@ -0,0 +1,31 @@ + + var $optionSets = $('#options .option-set'), + $optionLinks = $optionSets.find('a'); + + $optionLinks.click(function(){ + var $this = $(this); + // don't proceed if already selected + if ( $this.hasClass('selected') ) { + return false; + } + var $optionSet = $this.parents('.option-set'); + $optionSet.find('.selected').removeClass('selected'); + $this.addClass('selected'); + + // make option object dynamically, i.e. { filter: '.my-filter-class' } + var options = {}, + key = $optionSet.attr('data-option-key'), + value = $this.attr('data-option-value'); + // parse 'false' as false boolean + value = value === 'false' ? false : value; + options[ key ] = value; + if ( key === 'layoutMode' && typeof changeLayoutMode === 'function' ) { + // changes in layout modes need extra logic + changeLayoutMode( $this, options ) + } else { + // otherwise, apply new options + $container.isotope( options ); + } + + return false; + });