src/pyams_skin/resources/js/ext/jquery-resize.js
changeset 566 a1707c607eec
parent 565 318533413200
child 567 bca1726b1d85
--- a/src/pyams_skin/resources/js/ext/jquery-resize.js	Sun Jul 19 02:02:20 2020 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,252 +0,0 @@
-/*!
- * jQuery resize event - v1.1 - 3/14/2010
- * http://benalman.com/projects/jquery-resize-plugin/
- * 
- * Copyright (c) 2010 "Cowboy" Ben Alman
- * Dual licensed under the MIT and GPL licenses.
- * http://benalman.com/about/license/
- */
-
-// Script: jQuery resize event
-//
-// *Version: 1.1, Last updated: 3/14/2010*
-// 
-// Project Home - http://benalman.com/projects/jquery-resize-plugin/
-// GitHub       - http://github.com/cowboy/jquery-resize/
-// Source       - http://github.com/cowboy/jquery-resize/raw/master/jquery.ba-resize.js
-// (Minified)   - http://github.com/cowboy/jquery-resize/raw/master/jquery.ba-resize.min.js (1.0kb)
-// 
-// About: License
-// 
-// Copyright (c) 2010 "Cowboy" Ben Alman,
-// Dual licensed under the MIT and GPL licenses.
-// http://benalman.com/about/license/
-// 
-// About: Examples
-// 
-// This working example, complete with fully commented code, illustrates a few
-// ways in which this plugin can be used.
-// 
-// resize event - http://benalman.com/code/projects/jquery-resize/examples/resize/
-// 
-// About: Support and Testing
-// 
-// Information about what version or versions of jQuery this plugin has been
-// tested with, what browsers it has been tested in, and where the unit tests
-// reside (so you can test it yourself).
-// 
-// jQuery Versions - 1.3.2, 1.4.1, 1.4.2
-// Browsers Tested - Internet Explorer 6-8, Firefox 2-3.6, Safari 3-4, Chrome, Opera 9.6-10.1.
-// Unit Tests      - http://benalman.com/code/projects/jquery-resize/unit/
-// 
-// About: Release History
-// 
-// 1.1 - (3/14/2010) Fixed a minor bug that was causing the event to trigger
-//       immediately after bind in some circumstances. Also changed $.fn.data
-//       to $.data to improve performance.
-// 1.0 - (2/10/2010) Initial release
-
-(function ($, window, undefined) {
-	'$:nomunge'; // Used by YUI compressor.
-
-	// A jQuery object containing all non-window elements to which the resize
-	// event is bound.
-	var elems = $([]),
-
-	// Extend $.resize if it already exists, otherwise create it.
-		jq_resize = $.resize = $.extend($.resize, {}),
-
-		timeout_id,
-
-	// Reused strings.
-		str_setTimeout = 'setTimeout',
-		str_resize = 'resize',
-		str_data = str_resize + '-special-event',
-		str_delay = 'delay',
-		str_throttle = 'throttleWindow';
-
-	// Property: jQuery.resize.delay
-	//
-	// The numeric interval (in milliseconds) at which the resize event polling
-	// loop executes. Defaults to 250.
-
-	jq_resize[ str_delay ] = 250;
-
-	// Property: jQuery.resize.throttleWindow
-	//
-	// Throttle the native window object resize event to fire no more than once
-	// every <jQuery.resize.delay> milliseconds. Defaults to true.
-	//
-	// Because the window object has its own resize event, it doesn't need to be
-	// provided by this plugin, and its execution can be left entirely up to the
-	// browser. However, since certain browsers fire the resize event continuously
-	// while others do not, enabling this will throttle the window resize event,
-	// making event behavior consistent across all elements in all browsers.
-	//
-	// While setting this property to false will disable window object resize
-	// event throttling, please note that this property must be changed before any
-	// window object resize event callbacks are bound.
-
-	jq_resize[ str_throttle ] = true;
-
-	// Event: resize event
-	//
-	// Fired when an element's width or height changes. Because browsers only
-	// provide this event for the window element, for other elements a polling
-	// loop is initialized, running every <jQuery.resize.delay> milliseconds
-	// to see if elements' dimensions have changed. You may bind with either
-	// .resize( fn ) or .bind( "resize", fn ), and unbind with .unbind( "resize" ).
-	//
-	// Usage:
-	//
-	// > jQuery('selector').bind( 'resize', function(e) {
-	// >   // element's width or height has changed!
-	// >   ...
-	// > });
-	//
-	// Additional Notes:
-	//
-	// * The polling loop is not created until at least one callback is actually
-	//   bound to the 'resize' event, and this single polling loop is shared
-	//   across all elements.
-	//
-	// Double firing issue in jQuery 1.3.2:
-	//
-	// While this plugin works in jQuery 1.3.2, if an element's event callbacks
-	// are manually triggered via .trigger( 'resize' ) or .resize() those
-	// callbacks may double-fire, due to limitations in the jQuery 1.3.2 special
-	// events system. This is not an issue when using jQuery 1.4+.
-	//
-	// > // While this works in jQuery 1.4+
-	// > $(elem).css({ width: new_w, height: new_h }).resize();
-	// >
-	// > // In jQuery 1.3.2, you need to do this:
-	// > var elem = $(elem);
-	// > elem.css({ width: new_w, height: new_h });
-	// > elem.data( 'resize-special-event', { width: elem.width(), height: elem.height() } );
-	// > elem.resize();
-
-	$.event.special[ str_resize ] = {
-
-		// Called only when the first 'resize' event callback is bound per element.
-		setup: function () {
-			// Since window has its own native 'resize' event, return false so that
-			// jQuery will bind the event using DOM methods. Since only 'window'
-			// objects have a .setTimeout method, this should be a sufficient test.
-			// Unless, of course, we're throttling the 'resize' event for window.
-			if (!jq_resize[ str_throttle ] && this[ str_setTimeout ]) {
-				return false;
-			}
-
-			var elem = $(this);
-
-			// Add this element to the list of internal elements to monitor.
-			elems = elems.add(elem);
-
-			// Initialize data store on the element.
-			$.data(this, str_data, { w: elem.width(), h: elem.height() });
-
-			// If this is the first element added, start the polling loop.
-			if (elems.length === 1) {
-				loopy();
-			}
-		},
-
-		// Called only when the last 'resize' event callback is unbound per element.
-		teardown: function () {
-			// Since window has its own native 'resize' event, return false so that
-			// jQuery will unbind the event using DOM methods. Since only 'window'
-			// objects have a .setTimeout method, this should be a sufficient test.
-			// Unless, of course, we're throttling the 'resize' event for window.
-			if (!jq_resize[ str_throttle ] && this[ str_setTimeout ]) {
-				return false;
-			}
-
-			var elem = $(this);
-
-			// Remove this element from the list of internal elements to monitor.
-			elems = elems.not(elem);
-
-			// Remove any data stored on the element.
-			elem.removeData(str_data);
-
-			// If this is the last element removed, stop the polling loop.
-			if (!elems.length) {
-				clearTimeout(timeout_id);
-			}
-		},
-
-		// Called every time a 'resize' event callback is bound per element (new in
-		// jQuery 1.4).
-		add: function (handleObj) {
-			// Since window has its own native 'resize' event, return false so that
-			// jQuery doesn't modify the event object. Unless, of course, we're
-			// throttling the 'resize' event for window.
-			if (!jq_resize[ str_throttle ] && this[ str_setTimeout ]) {
-				return false;
-			}
-
-			var old_handler;
-
-			// The new_handler function is executed every time the event is triggered.
-			// This is used to update the internal element data store with the width
-			// and height when the event is triggered manually, to avoid double-firing
-			// of the event callback. See the "Double firing issue in jQuery 1.3.2"
-			// comments above for more information.
-
-			function new_handler(e, w, h) {
-				var elem = $(this),
-					data = $.data(this, str_data);
-
-				// If called from the polling loop, w and h will be passed in as
-				// arguments. If called manually, via .trigger( 'resize' ) or .resize(),
-				// those values will need to be computed.
-				data.w = w !== undefined ? w : elem.width();
-				data.h = h !== undefined ? h : elem.height();
-
-				old_handler.apply(this, arguments);
-			};
-
-			// This may seem a little complicated, but it normalizes the special event
-			// .add method between jQuery 1.4/1.4.1 and 1.4.2+
-			if ($.isFunction(handleObj)) {
-				// 1.4, 1.4.1
-				old_handler = handleObj;
-				return new_handler;
-			} else {
-				// 1.4.2+
-				old_handler = handleObj.handler;
-				handleObj.handler = new_handler;
-			}
-		}
-
-	};
-
-	function loopy() {
-
-		// Start the polling loop, asynchronously.
-		timeout_id = window[ str_setTimeout ](function () {
-
-			// Iterate over all elements to which the 'resize' event is bound.
-			elems.each(function () {
-				var elem = $(this),
-					width = elem.width(),
-					height = elem.height(),
-					data = $.data(this, str_data);
-
-				// If element size has changed since the last time, update the element
-				// data store and trigger the 'resize' event.
-				if (width !== data.w || height !== data.h) {
-					elem.trigger(str_resize, [ data.w = width, data.h = height ]);
-				}
-
-			});
-
-			// Loop.
-			loopy();
-
-		}, jq_resize[ str_delay ]);
-
-	};
-
-})(jQuery, this);