Browse code

Initial commit

Benjamin Roth authored on16/03/2023 20:22:35
Showing1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,24 @@
1
+function isOnScreen(elem) {
2
+    // if the element doesn't exist, abort
3
+    if (elem.length == 0) {
4
+        return;
5
+    }
6
+    var $window = jQuery(window);
7
+    var viewport_top = $window.scrollTop();
8
+    var viewport_height = $window.height();
9
+    var viewport_bottom = viewport_top + viewport_height;
10
+    var $elem = jQuery(elem);
11
+    var top = $elem.offset().top;
12
+    var height = $elem.height();
13
+    var bottom = top + height;
14
+
15
+    return (
16
+        (top >= viewport_top && top < viewport_bottom) ||
17
+        (bottom > viewport_top && bottom <= viewport_bottom) ||
18
+        (height > viewport_height &&
19
+            top <= viewport_top &&
20
+            bottom >= viewport_bottom)
21
+    );
22
+}
23
+
24
+