client/player/test/emission_fichiers/jquery_002.js
author ymh <ymh.work@gmail.com>
Wed, 01 Dec 2010 16:29:15 +0100
changeset 124 6de7f434618a
permissions -rw-r--r--
maj client
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
124
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
/*! Copyright (c) 2009 Brandon Aaron (http://brandonaaron.net)
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
 * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
 * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
 *
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
 * Version: 3.0.2
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
 * 
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
 * Requires: 1.2.2+
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
 */
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
(function($) {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
var types = ['DOMMouseScroll', 'mousewheel'];
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
$.event.special.mousewheel = {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
	setup: function() {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
		if ( this.addEventListener )
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
			for ( var i=types.length; i; )
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
				this.addEventListener( types[--i], handler, false );
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
		else
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
			this.onmousewheel = handler;
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
	},
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
	
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
	teardown: function() {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
		if ( this.removeEventListener )
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
			for ( var i=types.length; i; )
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
				this.removeEventListener( types[--i], handler, false );
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
		else
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
			this.onmousewheel = null;
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
	}
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
};
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
$.fn.extend({
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
	mousewheel: function(fn) {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
		return fn ? this.bind("mousewheel", fn) : this.trigger("mousewheel");
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
	},
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
	
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
	unmousewheel: function(fn) {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
		return this.unbind("mousewheel", fn);
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
	}
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
});
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
function handler(event) {
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
	var args = [].slice.call( arguments, 1 ), delta = 0, returnValue = true;
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
	
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
	event = $.event.fix(event || window.event);
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
	event.type = "mousewheel";
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
	
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
	if ( event.wheelDelta ) delta = event.wheelDelta/120;
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    52
	if ( event.detail     ) delta = -event.detail/3;
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    53
	
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    54
	// Add events and delta to the front of the arguments
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    55
	args.unshift(event, delta);
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    56
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    57
	return $.event.handle.apply(this, args);
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    58
}
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    59
6de7f434618a maj client
ymh <ymh.work@gmail.com>
parents:
diff changeset
    60
})(jQuery);