mirror of
https://github.com/lubuntu-team/lubuntu.me.git
synced 2025-07-04 19:41:29 +00:00
69 lines
1.8 KiB
JavaScript
69 lines
1.8 KiB
JavaScript
/*global jQuery, sowb */
|
|
/*!
|
|
* FitText.js 1.2
|
|
*
|
|
* Copyright 2011, Dave Rupert http://daverupert.com
|
|
* Released under the WTFPL license
|
|
* http://sam.zoy.org/wtfpl/
|
|
*
|
|
* Date: Thu May 05 14:23:00 2011 -0600
|
|
*/
|
|
var sowb = window.sowb || {};
|
|
|
|
(function ($) {
|
|
|
|
$.fn.fitText = function (kompressor, options) {
|
|
|
|
// Setup options
|
|
var compressor = kompressor || 1,
|
|
settings = $.extend({
|
|
'minFontSize': Number.NEGATIVE_INFINITY,
|
|
'maxFontSize': Number.POSITIVE_INFINITY
|
|
}, options);
|
|
|
|
return this.each(function () {
|
|
|
|
// Store the object
|
|
var $this = $(this);
|
|
|
|
// Resizer() resizes items based on the object width divided by the compressor * 10
|
|
var resizer = function () {
|
|
$this.css('font-size', Math.max(Math.min($this.width() / (compressor * 10), parseFloat(settings.maxFontSize)), parseFloat(settings.minFontSize)));
|
|
};
|
|
|
|
// Call once to set.
|
|
resizer();
|
|
|
|
// Call on resize. Opera debounces their resize by default.
|
|
$(window).on('resize.fittext orientationchange.fittext', resizer);
|
|
|
|
});
|
|
};
|
|
})(jQuery);
|
|
|
|
jQuery( function( $ ){
|
|
|
|
// Apply FitText to all Widgets Bundle FitText wrappers
|
|
sowb.runFitText = function () {
|
|
$( '.so-widget-fittext-wrapper' ).each( function() {
|
|
var fitTextWrapper = $( this );
|
|
|
|
var compressor = fitTextWrapper.data( 'fitTextCompressor' ) || 0.85;
|
|
fitTextWrapper.find( 'h1,h2,h3,h4,h5,h6' ).each( function () {
|
|
var $$ = $( this );
|
|
$$.fitText( compressor, {
|
|
maxFontSize: $$.css( 'font-size' )
|
|
} );
|
|
} );
|
|
fitTextWrapper.data( 'fitTextDone', true );
|
|
fitTextWrapper.trigger( 'fitTextDone' );
|
|
});
|
|
};
|
|
|
|
$( sowb ).on( 'setup_widgets', sowb.runFitText );
|
|
|
|
sowb.runFitText();
|
|
} );
|
|
|
|
window.sowb = sowb;
|