diff --git a/.gitignore b/.gitignore index b512c09..a088b6f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -node_modules \ No newline at end of file +node_modules +bower_components diff --git a/bower.json b/bower.json index 6e4c8da..4796b71 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "jQuery-viewport-checker", - "version": "1.8.7", + "version": "1.8.8", "homepage": "https://github.com/dirkgroenen/jQuery-viewport-checker", "authors": [ "Dirk Groenen ", diff --git a/dist/jquery.viewportchecker.min.js b/dist/jquery.viewportchecker.min.js index 50c66c0..1e7d357 100644 --- a/dist/jquery.viewportchecker.min.js +++ b/dist/jquery.viewportchecker.min.js @@ -1,10 +1,10 @@ /** - * jQuery-viewport-checker - v1.8.7 - 2015-12-17 + * jQuery-viewport-checker - v1.8.8 - 2017-09-25 * https://github.com/dirkgroenen/jQuery-viewport-checker * - * Copyright (c) 2015 Dirk Groenen + * Copyright (c) 2017 Dirk Groenen * Licensed MIT */ -!function(a){a.fn.viewportChecker=function(b){var c={classToAdd:"visible",classToRemove:"invisible",classToAddForFullView:"full-visible",removeClassAfterAnimation:!1,offset:100,repeat:!1,invertBottomOffset:!0,callbackFunction:function(a,b){},scrollHorizontal:!1,scrollBox:window};a.extend(c,b);var d=this,e={height:a(c.scrollBox).height(),width:a(c.scrollBox).width()},f=-1!=navigator.userAgent.toLowerCase().indexOf("webkit")||-1!=navigator.userAgent.toLowerCase().indexOf("windows phone")?"body":"html";return this.checkElements=function(){var b,g;c.scrollHorizontal?(b=a(f).scrollLeft(),g=b+e.width):(b=a(f).scrollTop(),g=b+e.height),d.each(function(){var d=a(this),f={},h={};if(d.data("vp-add-class")&&(h.classToAdd=d.data("vp-add-class")),d.data("vp-remove-class")&&(h.classToRemove=d.data("vp-remove-class")),d.data("vp-add-class-full-view")&&(h.classToAddForFullView=d.data("vp-add-class-full-view")),d.data("vp-keep-add-class")&&(h.removeClassAfterAnimation=d.data("vp-remove-after-animation")),d.data("vp-offset")&&(h.offset=d.data("vp-offset")),d.data("vp-repeat")&&(h.repeat=d.data("vp-repeat")),d.data("vp-scrollHorizontal")&&(h.scrollHorizontal=d.data("vp-scrollHorizontal")),d.data("vp-invertBottomOffset")&&(h.scrollHorizontal=d.data("vp-invertBottomOffset")),a.extend(f,c),a.extend(f,h),!d.data("vp-animated")||f.repeat){String(f.offset).indexOf("%")>0&&(f.offset=parseInt(f.offset)/100*e.height);var i=f.scrollHorizontal?d.offset().left:d.offset().top,j=f.scrollHorizontal?i+d.width():i+d.height(),k=Math.round(i)+f.offset,l=f.scrollHorizontal?k+d.width():k+d.height();f.invertBottomOffset&&(l-=2*f.offset),g>k&&l>b?(d.removeClass(f.classToRemove),d.addClass(f.classToAdd),f.callbackFunction(d,"add"),g>=j&&i>=b?d.addClass(f.classToAddForFullView):d.removeClass(f.classToAddForFullView),d.data("vp-animated",!0),f.removeClassAfterAnimation&&d.one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){d.removeClass(f.classToAdd)})):d.hasClass(f.classToAdd)&&f.repeat&&(d.removeClass(f.classToAdd+" "+f.classToAddForFullView),f.callbackFunction(d,"remove"),d.data("vp-animated",!1))}})},("ontouchstart"in window||"onmsgesturechange"in window)&&a(document).bind("touchmove MSPointerMove pointermove",this.checkElements),a(c.scrollBox).bind("load scroll",this.checkElements),a(window).resize(function(b){e={height:a(c.scrollBox).height(),width:a(c.scrollBox).width()},d.checkElements()}),this.checkElements(),this}}(jQuery); +!function(a){a.fn.viewportChecker=function(b){var c={classToAdd:"visible",classToRemove:"invisible",classToAddForFullView:"full-visible",removeClassAfterAnimation:!1,offset:100,repeat:!1,invertBottomOffset:!0,callbackFunction:function(a,b){},scrollHorizontal:!1,scrollBox:window};a.extend(c,b);var d=this,e={height:a(c.scrollBox).height(),width:a(c.scrollBox).width()};return this.checkElements=function(){var b,f;c.scrollHorizontal?(b=Math.max(a("html").scrollLeft(),a("body").scrollLeft(),a(window).scrollLeft()),f=b+e.width):(b=Math.max(a("html").scrollTop(),a("body").scrollTop(),a(window).scrollTop()),f=b+e.height),d.each(function(){var d=a(this),g={},h={};if(d.data("vp-add-class")&&(h.classToAdd=d.data("vp-add-class")),d.data("vp-remove-class")&&(h.classToRemove=d.data("vp-remove-class")),d.data("vp-add-class-full-view")&&(h.classToAddForFullView=d.data("vp-add-class-full-view")),d.data("vp-keep-add-class")&&(h.removeClassAfterAnimation=d.data("vp-remove-after-animation")),d.data("vp-offset")&&(h.offset=d.data("vp-offset")),d.data("vp-repeat")&&(h.repeat=d.data("vp-repeat")),d.data("vp-scrollHorizontal")&&(h.scrollHorizontal=d.data("vp-scrollHorizontal")),d.data("vp-invertBottomOffset")&&(h.scrollHorizontal=d.data("vp-invertBottomOffset")),a.extend(g,c),a.extend(g,h),!d.data("vp-animated")||g.repeat){String(g.offset).indexOf("%")>0&&(g.offset=parseInt(g.offset)/100*e.height);var i=g.scrollHorizontal?d.offset().left:d.offset().top,j=g.scrollHorizontal?i+d.width():i+d.height(),k=Math.round(i)+g.offset,l=g.scrollHorizontal?k+d.width():k+d.height();g.invertBottomOffset&&(l-=2*g.offset),kb?(d.removeClass(g.classToRemove),d.addClass(g.classToAdd),g.callbackFunction(d,"add"),j<=f&&i>=b?d.addClass(g.classToAddForFullView):d.removeClass(g.classToAddForFullView),d.data("vp-animated",!0),g.removeClassAfterAnimation&&d.one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend",function(){d.removeClass(g.classToAdd)})):d.hasClass(g.classToAdd)&&g.repeat&&(d.removeClass(g.classToAdd+" "+g.classToAddForFullView),g.callbackFunction(d,"remove"),d.data("vp-animated",!1))}})},("ontouchstart"in window||"onmsgesturechange"in window)&&a(document).bind("touchmove MSPointerMove pointermove",this.checkElements),a(c.scrollBox).bind("load scroll",this.checkElements),a(window).resize(function(b){e={height:a(c.scrollBox).height(),width:a(c.scrollBox).width()},d.checkElements()}),this.checkElements(),this}}(jQuery); //# sourceMappingURL=jquery.viewportchecker.min.js.map \ No newline at end of file diff --git a/dist/jquery.viewportchecker.min.js.map b/dist/jquery.viewportchecker.min.js.map index b3bab82..59b9bbb 100644 --- a/dist/jquery.viewportchecker.min.js.map +++ b/dist/jquery.viewportchecker.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["../src/jquery.viewportchecker.js"],"names":["$","fn","viewportChecker","useroptions","options","classToAdd","classToRemove","classToAddForFullView","removeClassAfterAnimation","offset","repeat","invertBottomOffset","callbackFunction","elem","action","scrollHorizontal","scrollBox","window","extend","$elem","this","boxSize","height","width","scrollElem","navigator","userAgent","toLowerCase","indexOf","checkElements","viewportStart","viewportEnd","scrollLeft","scrollTop","each","$obj","objOptions","attrOptions","data","String","parseInt","rawStart","left","top","rawEnd","elemStart","Math","round","elemEnd","removeClass","addClass","one","hasClass","document","bind","resize","e","jQuery"],"mappings":"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","file":"jquery.viewportchecker.min.js"} \ No newline at end of file +{"version":3,"sources":["../src/jquery.viewportchecker.js"],"names":["$","fn","viewportChecker","useroptions","options","classToAdd","classToRemove","classToAddForFullView","removeClassAfterAnimation","offset","repeat","invertBottomOffset","callbackFunction","elem","action","scrollHorizontal","scrollBox","window","extend","$elem","this","boxSize","height","width","checkElements","viewportStart","viewportEnd","Math","max","scrollLeft","scrollTop","each","$obj","objOptions","attrOptions","data","String","indexOf","parseInt","rawStart","left","top","rawEnd","elemStart","round","elemEnd","removeClass","addClass","one","hasClass","document","bind","resize","e","jQuery"],"mappings":"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","file":"jquery.viewportchecker.min.js"} \ No newline at end of file diff --git a/package.json b/package.json index 522a34b..05b9ec6 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "jQuery-viewport-checker", "author": "Dirk Groenen", - "version": "1.8.7", + "version": "1.8.8", "homepage": "https://github.com/dirkgroenen/jQuery-viewport-checker", "description": "Little script that detects if an element is in the viewport and adds a class to it.", "repository": "https://github.com/dirkgroenen/jQuery-viewport-checker",