blob: 5938b9e4db69d4765ecc83c5c0b4d4eacac96f5d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
// $Id$
(function ($) {
Drupal.behaviors.textarea = {
attach: function (context, settings) {
$('textarea.resizable', context).once('textarea', function () {
// When wrapping the text area, work around an IE margin bug. See:
// http://jaspan.com/ie-inherited-margin-bug-form-elements-and-haslayout
var staticOffset = null;
var textarea = $(this).wrap('<div class="resizable-textarea"><span></span></div>');
var grippie = $('<div class="grippie"></div>').mousedown(startDrag);
grippie
.insertAfter(textarea)
.css('margin-right', grippie.width() - textarea.width());
function startDrag(e) {
staticOffset = textarea.height() - e.pageY;
textarea.css('opacity', 0.25);
$(document).mousemove(performDrag).mouseup(endDrag);
return false;
}
function performDrag(e) {
textarea.height(Math.max(32, staticOffset + e.pageY) + 'px');
return false;
}
function endDrag(e) {
$(document).unbind('mousemove', performDrag).unbind('mouseup', endDrag);
textarea.css('opacity', 1);
}
});
}
};
})(jQuery);
|