diff options
author | Pierre Schmitz <pierre@archlinux.de> | 2014-12-27 15:41:37 +0100 |
---|---|---|
committer | Pierre Schmitz <pierre@archlinux.de> | 2014-12-31 11:43:28 +0100 |
commit | c1f9b1f7b1b77776192048005dcc66dcf3df2bfb (patch) | |
tree | 2b38796e738dd74cb42ecd9bfd151803108386bc /resources/jquery/jquery.appear.js | |
parent | b88ab0086858470dd1f644e64cb4e4f62bb2be9b (diff) |
Update to MediaWiki 1.24.1
Diffstat (limited to 'resources/jquery/jquery.appear.js')
-rw-r--r-- | resources/jquery/jquery.appear.js | 138 |
1 files changed, 0 insertions, 138 deletions
diff --git a/resources/jquery/jquery.appear.js b/resources/jquery/jquery.appear.js deleted file mode 100644 index 4f77886c..00000000 --- a/resources/jquery/jquery.appear.js +++ /dev/null @@ -1,138 +0,0 @@ -/* - * jQuery.appear - * http://code.google.com/p/jquery-appear/ - * - * Copyright (c) 2009 Michael Hixson - * Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php) -*/ -(function($) { - - $.fn.appear = function(fn, options) { - - var settings = $.extend({ - - //arbitrary data to pass to fn - data: undefined, - - //call fn only on the first appear? - one: true - - }, options); - - return this.each(function() { - - var t = $(this); - - //whether the element is currently visible - t.appeared = false; - - if (!fn) { - - //trigger the custom event - t.trigger('appear', settings.data); - return; - } - - var w = $(window); - - //fires the appear event when appropriate - var check = function() { - - //is the element hidden? - if (!t.is(':visible')) { - - //it became hidden - t.appeared = false; - return; - } - - //is the element inside the visible window? - var a = w.scrollLeft(); - var b = w.scrollTop(); - var o = t.offset(); - var x = o.left; - var y = o.top; - - if (y + t.height() >= b && - y <= b + w.height() && - x + t.width() >= a && - x <= a + w.width()) { - - //trigger the custom event - if (!t.appeared) t.trigger('appear', settings.data); - - } else { - - //it scrolled out of view - t.appeared = false; - } - }; - - //create a modified fn with some additional logic - var modifiedFn = function() { - - //mark the element as visible - t.appeared = true; - - //is this supposed to happen only once? - if (settings.one) { - - //remove the check - w.unbind('scroll', check); - var i = $.inArray(check, $.fn.appear.checks); - if (i >= 0) $.fn.appear.checks.splice(i, 1); - } - - //trigger the original fn - fn.apply(this, arguments); - }; - - //bind the modified fn to the element - if (settings.one) t.one('appear', settings.data, modifiedFn); - else t.bind('appear', settings.data, modifiedFn); - - //check whenever the window scrolls - w.scroll(check); - - //check whenever the dom changes - $.fn.appear.checks.push(check); - - //check now - (check)(); - }); - }; - - //keep a queue of appearance checks - $.extend($.fn.appear, { - - checks: [], - timeout: null, - - //process the queue - checkAll: function() { - var length = $.fn.appear.checks.length; - if (length > 0) while (length--) ($.fn.appear.checks[length])(); - }, - - //check the queue asynchronously - run: function() { - if ($.fn.appear.timeout) clearTimeout($.fn.appear.timeout); - $.fn.appear.timeout = setTimeout($.fn.appear.checkAll, 20); - } - }); - - //run checks when these methods are called - $.each(['append', 'prepend', 'after', 'before', 'attr', - 'removeAttr', 'addClass', 'removeClass', 'toggleClass', - 'remove', 'css', 'show', 'hide'], function(i, n) { - var old = $.fn[n]; - if (old) { - $.fn[n] = function() { - var r = old.apply(this, arguments); - $.fn.appear.run(); - return r; - } - } - }); - -})(jQuery);
\ No newline at end of file |