File: jquery.isonscreen.js

package info (click to toggle)
chromium-browser 57.0.2987.98-1~deb8u1
  • links: PTS, VCS
  • area: main
  • in suites: jessie
  • size: 2,637,852 kB
  • ctags: 2,544,394
  • sloc: cpp: 12,815,961; ansic: 3,676,222; python: 1,147,112; asm: 526,608; java: 523,212; xml: 286,794; perl: 92,654; sh: 86,408; objc: 73,271; makefile: 27,698; cs: 18,487; yacc: 13,031; tcl: 12,957; pascal: 4,875; ml: 4,716; lex: 3,904; sql: 3,862; ruby: 1,982; lisp: 1,508; php: 1,368; exp: 404; awk: 325; csh: 117; jsp: 39; sed: 37
file content (53 lines) | stat: -rw-r--r-- 1,502 bytes parent folder | download | duplicates (45)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
/* Copyright (c) 2010
 * @author Laurence Wheway
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * @version 1.2.0
 */
(function($) {
	jQuery.extend({
		isOnScreen: function(box, container) {
			//ensure numbers come in as intgers (not strings) and remove 'px' is it's there
			for(var i in box){box[i] = parseFloat(box[i])};
			for(var i in container){container[i] = parseFloat(container[i])};

			if(!container){
				container = {
					left: $(window).scrollLeft(),
					top: $(window).scrollTop(),
					width: $(window).width(),
					height: $(window).height()
				}
			}

			if(	box.left+box.width-container.left > 0 &&
				box.left < container.width+container.left &&
				box.top+box.height-container.top > 0 &&
				box.top < container.height+container.top
			) return true;
			return false;
		}
	})


	jQuery.fn.isOnScreen = function (container) {
		for(var i in container){container[i] = parseFloat(container[i])};

		if(!container){
			container = {
				left: $(window).scrollLeft(),
				top: $(window).scrollTop(),
				width: $(window).width(),
				height: $(window).height()
			}
		}

		if(	$(this).offset().left+$(this).width()-container.left > 0 &&
			$(this).offset().left < container.width+container.left &&
			$(this).offset().top+$(this).height()-container.top > 0 &&
			$(this).offset().top < container.height+container.top
		) return true;
		return false;
	}
})(jQuery);