/* jquery.autolineheight
*
* Version 1.0.0 by Oliver Boermans
*
* Extends jQuery
*
* Requires jQEm
*
*/
(function($) {
$.fn.autolineheight = function(options) {
// Default settings
var settings = {
minWidth: 15,
minLineHeight: 1.4,
ratio: .02
};
if(options) {
$.extend(settings, options);
}
// Calculate and assign new line-height
function adjustlineheight(container){
var emWidth = parseInt($(container).width())/$.jqem.current();
// Enforce minimum line-height
if (emWidth <= settings.minWidth) emWidth = settings.minWidth;
var newLineHeight = settings.minLineHeight+((emWidth-settings.minWidth)*settings.ratio);
$(container).css('line-height',newLineHeight);
}
this.each(function(){
var container = this;
adjustlineheight(container);
// Re-adjust when window width is changed
$(window).bind('resize', function(){
adjustlineheight(container);
});
// Re-adjust when font size changes
$.jqem.bind(function() {
adjustlineheight(container);
});
});
return this;
};
})(jQuery);