client/player/test/emission_fichiers/textarea.js
author ymh <ymh.work@gmail.com>
Thu, 28 Oct 2010 00:37:07 +0200
changeset 19 cbc514bab5bf
parent 1 eb9188f2ee4f
permissions -rw-r--r--
Added tag V00.06 for changeset b9c2a90029e7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     1
// $Id: textarea.js,v 1.22 2008/01/17 19:31:56 goba Exp $
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     2
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     3
Drupal.behaviors.textarea = function(context) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     4
  $('textarea.resizable:not(.textarea-processed)', context).each(function() {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     5
    // Avoid non-processed teasers.
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     6
    if ($(this).is(('textarea.teaser:not(.teaser-processed)'))) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     7
      return false;  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     8
    }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     9
    var textarea = $(this).addClass('textarea-processed'), staticOffset = null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    10
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    11
    // When wrapping the text area, work around an IE margin bug.  See:
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    12
    // http://jaspan.com/ie-inherited-margin-bug-form-elements-and-haslayout
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    13
    $(this).wrap('<div class="resizable-textarea"><span></span></div>')
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    14
      .parent().append($('<div class="grippie"></div>').mousedown(startDrag));
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    15
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    16
    var grippie = $('div.grippie', $(this).parent())[0];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    17
    grippie.style.marginRight = (grippie.offsetWidth - $(this)[0].offsetWidth) +'px';
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    18
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    19
    function startDrag(e) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    20
      staticOffset = textarea.height() - e.pageY;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    21
      textarea.css('opacity', 0.25);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    22
      $(document).mousemove(performDrag).mouseup(endDrag);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    23
      return false;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    24
    }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    25
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    26
    function performDrag(e) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    27
      textarea.height(Math.max(32, staticOffset + e.pageY) + 'px');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    28
      return false;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    29
    }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    30
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    31
    function endDrag(e) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    32
      $(document).unbind("mousemove", performDrag).unbind("mouseup", endDrag);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    33
      textarea.css('opacity', 1);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    34
    }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    35
  });
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    36
};