Вариант в виде плагина к jQuery:
if (jQuery) (function (jQuery) {
jQuery.extend(jQuery.fn, {
// autoheight
autoheight: function (options) {
jQuery(this).each(function () {
var settings = jQuery.extend({
offset: 20
}, options);
var obj = jQuery(this);
function _sah() {
obj.height(jQuery(window).height() - obj.offset().top - settings.offset);
};
//jQuery(window).ready(function () { _sah(); });
jQuery(window).load(function () { _sah(); });
jQuery(window).resize(function () { _sah(); });
});
}
});
})(jQuery);
Использование, соотв...
$('#editor').autoheight({ offset: 50 });
Работает, но есть сомнения, все ли я правильно придумал...