/*! * jQuery Smoove v0.2.7 (http://smoove.donlabs.com) * Copyright (c) 2014 Adam Bouqdib * Licensed under GPL-2.0 (http://abemedia.co.uk/license) */ !function(a, b, c) { a.fn.smoove = function(b) { return a.fn.smoove.init(this, a.extend({}, a.fn.smoove.defaults, b)), this } , a.fn.smoove.items = [], a.fn.smoove.loaded = !1, a.fn.smoove.defaults = { offset: 150, opacity: 0, transition: "all 1s ease, opacity 1.5s ease", transformStyle: "preserve-3d", transformOrigin: !1, perspective: 1e3 }, a.fn.smoove.init = function(d, e) { function f(a, b, c) { function d(a) { return a.charAt(0).toUpperCase() + a.slice(1) } for (var e = ["webkit", "moz", "ms", "o"], f = {}, g = 0; g < e.length; g++) c && (b = b.replace(c, "-" + e[g] + "-" + c)), f[d(e[g]) + d(a)] = b; return f[a] = b, f } function g(c) { for (var d = 0; d < a.fn.smoove.items.length; d++) { var e = a.fn.smoove.items[d] , g = e.params , h = a(b).height() , i = !c || "down" === c && "1" === e.css("opacity") ? 0 : g.offset , j = a(b).scrollTop() + h - e.data("top"); if ("string" == typeof i && i.indexOf("%") && (i = parseInt(i) / 100 * h), i > j) { g.opacity !== !1 && e.css({ opacity: g.opacity }); for (var k = [], l = ["move", "move3D", "moveX", "moveY", "moveZ", "rotate", "rotate3d", "rotateX", "rotateY", "rotateZ", "scale", "scale3d", "scaleX", "scaleY", "skew", "skewX", "skewY"], m = 0; m < l.length; m++) "undefined" != typeof g[l[m]] && (k[l[m]] = g[l[m]]); var n = ""; for (var o in k) n += o.replace("move", "translate") + "(" + k[o] + ") "; n && (e.css(f("transform", n)), e.parent().css(f("perspective", g.perspective)), g.transformOrigin && e.css(f("transformOrigin", g.transformOrigin))) } else e.css("opacity", 1).css(f("transform", "")) } } if (d.each(function() { var b = a(this) , c = b.params = a.extend({}, e, b.data()); b.params.opacity = b.params.opacity / 100, b.data("top", b.offset().top), c.transition = f("transition", c.transition, "transform"), b.css(c.transition), a.fn.smoove.items.push(b) }), !a.fn.smoove.loaded) { a.fn.smoove.loaded = !0; var h, i = !1, j = 0, k = a(b).height(), l = a(b).width(), m = a(c).height(); a("body").width() === a(b).width() && a("body").css("overflow-x", "hidden"), a(b).resize(function() { clearTimeout(h), h = setTimeout(function() { var d = a(b).height() , e = a(b).width() , h = k > d ? h = "up" : "down" , i = a.fn.smoove.items; if (k = d, l !== e) { for (var j = 0; j < i.length; j++) i[j].css(f("transform", "")).css(f("transition", "")); var n = setInterval(function() { var d = a(c).height(); if (d === m) { b.clearInterval(n); for (var e = 0; e < i.length; e++) i[e].data("top", i[e].offset().top), i[e].css(i[e].params.transition); g(h) } m = d }, 500) } else g(h); l = e }, 500) }), a(b).on("load", function() { g(), a(b).scroll(function() { i = !0 }), setInterval(function() { if (i) { i = !1; var c = a(b).scrollTop() , d = j > c ? d = "up" : "down"; j = c, g(d) } }, 250) }) } } }(jQuery, window, document);