Advertisement
rdsedmundo

niquelparallax

Nov 19th, 2015
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. $(function () {
  2.     if (location.href.search("niquel-duroquimico") == -1)
  3.         return;
  4.  
  5.     console.log("[NIQUEL-PARALLAX] Started at: " + Date.now());
  6.  
  7.     var _FIRST = {
  8.         "width": 321,
  9.         "height": 400,
  10.         "src": "http://superfinish.local/wp-content/themes/pedosis-package/pedosis/images/niquel3d.png?cache=1"
  11.     }
  12.  
  13.     var _SECOND = {
  14.         "src": "http://superfinishing.boltbrasil.com.br/wp-content/themes/pedosis-package/pedosis/images/products/niquel02.png"
  15.     }
  16.  
  17.     $(".properties-niquel").css({
  18.         "position": "relative",
  19.         "z-index": 10
  20.     });
  21. // 240 690
  22.     function callback() {
  23.         var the_image = new Image();
  24.         the_image.src = _SECOND.src;
  25.  
  26.         var _target = $("<div class='test'><img src='" + _FIRST.src + "' /></div>");
  27.         _target.appendTo("body");
  28.  
  29.         _target.addClass("niquel-parallax");
  30.  
  31.         _target.find("img").attr("src", _FIRST.src);
  32.  
  33.         var old = Date.now();
  34.         for (;;)
  35.             if (Date.now() - old > 2000)
  36.                 break;
  37.  
  38.         var _css = {
  39.             "top": 500,
  40.             "left": 300,
  41.             "z-index": 5,
  42.             "position": "absolute",
  43.             "transition": "top 0.2s ease-in-out, left 0.2s ease-in-out, opacity 0.2s ease-in-out"
  44.         }
  45.  
  46.         _target.css(_css);
  47.  
  48.         var swap = false;
  49.         var _end = false;
  50.  
  51.         var __set = false;
  52.  
  53.         var old_scroll = 0;
  54.         $(window).scroll(function (event) {
  55.             if (_end) {
  56.                 console.log("All done.");
  57.                 return;
  58.             }
  59.  
  60.             var _scroll = $(window).scrollTop();
  61.  
  62.             if (_scroll >= 900 && swap == false) {
  63.                 _target.css({
  64.                     "opacity": 0
  65.                 });
  66.  
  67.                 setTimeout(function () {
  68.                     _target.css({
  69.                         "z-index": 15,
  70.                         "opacity": 1
  71.                     });
  72.                     _target.find("img").attr("src", _SECOND.src);
  73.                 }, 500);
  74.  
  75.                 console.log("Setting swap to [true]");
  76.                 swap = true;
  77.             } else if (_scroll <= 900 && swap == true) {
  78.                 _target.css("opacity", 0);
  79.  
  80.                 setTimeout(function () {
  81.                     _target.css("z-index", 1)
  82.                     _target.css("opacity", 1);
  83.                     _target.find("img").attr("src", _FIRST.src);
  84.                 }, 500);
  85.  
  86.                 console.log("Setting swap to [false]");
  87.                 swap = false;
  88.             }
  89.  
  90.             var _off = _target.offset();
  91.             console.log("offset=" + _off.top);
  92.             if (_off.top > screen.height && _off.left > 400) {
  93.                 console.log("Animation...");
  94.                 _end = true;
  95.  
  96.                 _target.css("transition", "initial");
  97.  
  98.                 _target.animate({
  99.                     "top": $(".figura").offset().top,
  100.                     "left": $(".figura").offset().left,
  101.                     "opacity": 0
  102.                 }, 1000, function() {
  103.                     _target.find("img").attr("src", _FIRST.src);
  104.                     _target.css("top", _css.top);
  105.                     _target.css("left", _css.left);
  106.                     $(".figura").css("opacity", 1);
  107.                 });
  108.  
  109.             } else {
  110.                 if (_scroll > 400)
  111.                     _scroll += 120 + 43 + 10; // menu
  112.  
  113.                 var top_val = _scroll;
  114.  
  115.                 if (top_val >= _css.top)
  116.                     _target.css("top", _scroll);
  117.                 else {
  118.                     _target.css("top", _css.top);
  119.                     _target.css("left", _css.left);
  120.                 }
  121.  
  122.                 if ((_scroll - old_scroll) > 0 && swap && _target.offset().left + 35 < $(".figura").offset().left)
  123.                     _target.css("left", _target.offset().left + 35);
  124.             }
  125.  
  126.             console.log("old:" + old_scroll);
  127.             console.log("scroll: " + _scroll);
  128.             old_scroll = _scroll;
  129.         });
  130.     }
  131.  
  132.     var _time = setInterval(function () {
  133.         console.log("[NIQUEL-PARALLAX] Waiting for template load...");
  134.  
  135.         if ($("#loader").css("display") == "none") {
  136.             clearInterval(_time);
  137.             callback();
  138.         }
  139.     }, 1000);
  140. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement