/*!
|
* jQuery afterresize event plugin
|
* http://github.com/roxeteer/jquery-afterresize
|
*
|
* Copyright (c) 2010 Visa Kopu, visa@visakopu.net
|
*
|
* Licensed under the BSD license.
|
* http://github.com/roxeteer/jquery-afterresize/wiki/License
|
*/
|
|
(function($) {
|
var resizeHandler = function(e) {
|
var el = $(this);
|
|
if (el.data("resizetimer")) {
|
window.clearTimeout(el.data("resizetimer"));
|
}
|
|
el.data("resizetimer", window.setTimeout(function() {
|
el.trigger("afterresize");
|
}, 300));
|
}
|
|
$.event.special.afterresize = {
|
add: function(handleObj) {
|
$(this).bind("resize", resizeHandler);
|
|
// apply old event handler
|
var old_handler = handleObj.handler;
|
handleObj.handler = function(event) {
|
return old_handler.apply(this, arguments);
|
}
|
},
|
|
remove: function(handleObj) {
|
$(this).unbind("resize", resizeHandler);
|
}
|
};
|
|
$.fn.extend({
|
afterresize: function(f) {
|
if ($.isFunction(f)) {
|
$(this).bind("afterresize", f);
|
} else {
|
$(this).trigger("afterresize");
|
}
|
|
return this;
|
}
|
});
|
})(jQuery);
|