| author | ymh <ymh.work@gmail.com> |
| Fri, 08 Apr 2011 17:21:37 +0200 | |
| changeset 69 | 4775601a2531 |
| permissions | -rw-r--r-- |
|
69
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
1 |
/*! |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
2 |
* jQuery TextChange Plugin |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
3 |
* http://www.zurb.com/playground/jquery-text-change-custom-event |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
4 |
* |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
5 |
* Copyright 2010, ZURB |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
6 |
* Released under the MIT License |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
7 |
*/ |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
8 |
(function(a){a.event.special.textchange={setup:function(){a(this).data("lastValue",this.contentEditable==="true"?a(this).html():a(this).val());a(this).bind("keyup.textchange",a.event.special.textchange.handler);a(this).bind("cut.textchange paste.textchange input.textchange",a.event.special.textchange.delayedHandler)},teardown:function(){a(this).unbind(".textchange")},handler:function(){a.event.special.textchange.triggerIfChanged(a(this))},delayedHandler:function(){var b=a(this);setTimeout(function(){a.event.special.textchange.triggerIfChanged(b)}, |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
9 |
25)},triggerIfChanged:function(b){var c=b[0].contentEditable==="true"?b.html():b.val();if(c!==b.data("lastValue")){b.trigger("textchange",b.data("lastValue"));b.data("lastValue",c)}}};a.event.special.hastext={setup:function(){a(this).bind("textchange",a.event.special.hastext.handler)},teardown:function(){a(this).unbind("textchange",a.event.special.hastext.handler)},handler:function(b,c){c===""&&c!==a(this).val()&&a(this).trigger("hastext")}};a.event.special.notext={setup:function(){a(this).bind("textchange", |
|
4775601a2531
use platform and clean install files next
ymh <ymh.work@gmail.com>
parents:
diff
changeset
|
10 |
a.event.special.notext.handler)},teardown:function(){a(this).unbind("textchange",a.event.special.notext.handler)},handler:function(b,c){a(this).val()===""&&a(this).val()!==c&&a(this).trigger("notext")}}})(jQuery); |