]>
Commit | Line | Data |
---|---|---|
06a3d686 BB |
1 | /*global jQuery */ |
2 | /*! | |
3 | * FitText.js 1.1 | |
4 | * | |
5 | * Copyright 2011, Dave Rupert http://daverupert.com | |
6 | * Released under the WTFPL license | |
7 | * http://sam.zoy.org/wtfpl/ | |
8 | * | |
9 | * Date: Thu May 05 14:23:00 2011 -0600 | |
10 | */ | |
11 | ||
12 | (function( $ ){ | |
13 | ||
14 | $.fn.fitText = function( kompressor, options ) { | |
15 | ||
16 | // Setup options | |
17 | var compressor = kompressor || 1, | |
18 | settings = $.extend({ | |
19 | 'minFontSize' : Number.NEGATIVE_INFINITY, | |
20 | 'maxFontSize' : Number.POSITIVE_INFINITY | |
21 | }, options); | |
22 | ||
23 | return this.each(function(){ | |
24 | ||
25 | // Store the object | |
26 | var $this = $(this); | |
27 | ||
28 | // Resizer() resizes items based on the object width divided by the compressor * 10 | |
29 | var resizer = function () { | |
30 | $this.css('font-size', Math.max(Math.min($this.width() / (compressor*10), parseFloat(settings.maxFontSize)), parseFloat(settings.minFontSize))); | |
31 | }; | |
32 | ||
33 | // Call once to set. | |
34 | resizer(); | |
35 | ||
36 | // Call on resize. Opera debounces their resize by default. | |
37 | $(window).on('resize', resizer); | |
38 | ||
39 | }); | |
40 | ||
41 | }; | |
42 | ||
43 | })( jQuery ); |