diff options
author | Stefan Wintermeyer <stefan.wintermeyer@amooma.de> | 2013-01-22 00:04:03 +0100 |
---|---|---|
committer | Stefan Wintermeyer <stefan.wintermeyer@amooma.de> | 2013-01-22 00:04:03 +0100 |
commit | ab63774d954fe1f967a97ffe5a0a66016eca2257 (patch) | |
tree | b3974a58deabe6a989ad7352f10e75d7495cb0c5 /app/assets/javascripts/vendor/autoresize.jquery.js | |
parent | 495bbfdf78206c8adaec057e83900dda6754092c (diff) | |
parent | f8bc860750f06ab95f9ced8e919e846d3e589819 (diff) |
Merge branch 'tb-css' into develop
Diffstat (limited to 'app/assets/javascripts/vendor/autoresize.jquery.js')
-rw-r--r-- | app/assets/javascripts/vendor/autoresize.jquery.js | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/app/assets/javascripts/vendor/autoresize.jquery.js b/app/assets/javascripts/vendor/autoresize.jquery.js deleted file mode 100644 index 28cec5d..0000000 --- a/app/assets/javascripts/vendor/autoresize.jquery.js +++ /dev/null @@ -1,94 +0,0 @@ -/* - * jQuery autoResize (textarea auto-resizer) - * @copyright James Padolsey http://james.padolsey.com - * @version 1.04 - */ - -(function($){ - $.fn.autoResize = function(options) { - // Just some abstracted details, - // to make plugin users happy: - var settings = $.extend({ - onResize : function(){}, - animate : true, - animateDuration : 150, - animateCallback : function(){}, - extraSpace : 20, - limit: 1000 - }, options); - - // Only textarea's auto-resize: - this.filter('textarea').each(function(){ - - // Get rid of scrollbars and disable WebKit resizing: - var textarea = $(this).css({resize:'none','overflow-y':'hidden'}), - - // Cache original height, for use later: - origHeight = textarea.height(), - - // Need clone of textarea, hidden off screen: - clone = (function(){ - - // Properties which may effect space taken up by chracters: - var props = ['height','width','lineHeight','textDecoration','letterSpacing'], - propOb = {}; - - // Create object of styles to apply: - $.each(props, function(i, prop){ - propOb[prop] = textarea.css(prop); - }); - - // Clone the actual textarea removing unique properties - // and insert before original textarea: - return textarea.clone().removeAttr('id').removeAttr('name').css({ - position: 'absolute', - top: 0, - left: -9999 - }).css(propOb).attr('tabIndex','-1').insertBefore(textarea); - - })(), - lastScrollTop = null, - updateSize = function() { - - // Prepare the clone: - clone.height(0).val($(this).val()).scrollTop(10000); - - // Find the height of text: - var scrollTop = Math.max(clone.scrollTop(), origHeight) + settings.extraSpace, - toChange = $(this).add(clone); - - // Don't do anything if scrollTip hasen't changed: - if (lastScrollTop === scrollTop) { return; } - lastScrollTop = scrollTop; - - // Check for limit: - if ( scrollTop >= settings.limit ) { - $(this).css('overflow-y',''); - return; - } - // Fire off callback: - settings.onResize.call(this); - - // Either animate or directly apply height: - settings.animate && textarea.css('display') === 'block' ? - toChange.stop().animate({height:scrollTop}, settings.animateDuration, settings.animateCallback) - : toChange.height(scrollTop); - }; - - // Bind namespaced handlers to appropriate events: - textarea - .unbind('.dynSiz') - .bind('keyup.dynSiz', updateSize) - .bind('keydown.dynSiz', updateSize) - .bind('change.dynSiz', updateSize); - - }); - - // Chain: - return this; - - }; - - - -})(jQuery); |