mirror of
https://github.com/misode/misode.github.io.git
synced 2026-05-03 22:22:54 +00:00
Remove autogrow
This commit is contained in:
-76
@@ -1,76 +0,0 @@
|
|||||||
(function($)
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* Auto-growing textareas; technique ripped from Facebook
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* http://github.com/jaz303/jquery-grab-bag/tree/master/javascripts/jquery.autogrow-textarea.js
|
|
||||||
*/
|
|
||||||
$.fn.autogrow = function(options)
|
|
||||||
{
|
|
||||||
return this.filter('textarea').each(function()
|
|
||||||
{
|
|
||||||
var self = this;
|
|
||||||
var $self = $(self);
|
|
||||||
var minHeight = $self.height();
|
|
||||||
var noFlickerPad = $self.hasClass('autogrow-short') ? 0 : parseInt($self.css('lineHeight')) || 0;
|
|
||||||
var settings = $.extend({
|
|
||||||
preGrowCallback: null,
|
|
||||||
postGrowCallback: null
|
|
||||||
}, options );
|
|
||||||
|
|
||||||
var shadow = $('<div></div>').css({
|
|
||||||
position: 'absolute',
|
|
||||||
top: -10000,
|
|
||||||
left: -10000,
|
|
||||||
width: $self.width(),
|
|
||||||
fontSize: $self.css('fontSize'),
|
|
||||||
fontFamily: $self.css('fontFamily'),
|
|
||||||
fontWeight: $self.css('fontWeight'),
|
|
||||||
lineHeight: $self.css('lineHeight'),
|
|
||||||
resize: 'none',
|
|
||||||
'word-wrap': 'break-word'
|
|
||||||
}).appendTo(document.body);
|
|
||||||
|
|
||||||
var update = function(event)
|
|
||||||
{
|
|
||||||
var times = function(string, number)
|
|
||||||
{
|
|
||||||
for (var i=0, r=''; i<number; i++) r += string;
|
|
||||||
return r;
|
|
||||||
};
|
|
||||||
|
|
||||||
var val = self.value.replace(/&/g, '&')
|
|
||||||
.replace(/</g, '<')
|
|
||||||
.replace(/>/g, '>')
|
|
||||||
.replace(/\n$/, '<br/> ')
|
|
||||||
.replace(/\n/g, '<br/>')
|
|
||||||
.replace(/ {2,}/g, function(space){ return times(' ', space.length - 1) + ' ' });
|
|
||||||
|
|
||||||
// Did enter get pressed? Resize in this keydown event so that the flicker doesn't occur.
|
|
||||||
if (event && event.data && event.data.event === 'keydown' && event.keyCode === 13) {
|
|
||||||
val += '<br />';
|
|
||||||
}
|
|
||||||
|
|
||||||
shadow.css('width', $self.width());
|
|
||||||
shadow.html(val + (noFlickerPad === 0 ? '...' : '')); // Append '...' to resize pre-emptively.
|
|
||||||
|
|
||||||
var newHeight=Math.max(shadow.height() + noFlickerPad, minHeight);
|
|
||||||
if(settings.preGrowCallback!=null){
|
|
||||||
newHeight=settings.preGrowCallback($self,shadow,newHeight,minHeight);
|
|
||||||
}
|
|
||||||
|
|
||||||
$self.height(newHeight);
|
|
||||||
|
|
||||||
if(settings.postGrowCallback!=null){
|
|
||||||
settings.postGrowCallback($self);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$self.change(update).keyup(update).keydown({event:'keydown'},update);
|
|
||||||
$(window).resize(update);
|
|
||||||
|
|
||||||
update();
|
|
||||||
});
|
|
||||||
};
|
|
||||||
})(jQuery);
|
|
||||||
@@ -93,7 +93,6 @@
|
|||||||
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
|
||||||
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
|
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
|
||||||
<script src="autogrow.js" charset="utf-8"></script>
|
|
||||||
<script src="script.js" charset="utf-8"></script>
|
<script src="script.js" charset="utf-8"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user