wp/wp-content/themes/themeforest-2964855-scrn-responsive-single-page-portfolio/SCRN/js/jquery.smooth-scroll.js
author ymh <ymh.work@gmail.com>
Mon, 14 Oct 2019 17:39:30 +0200
changeset 7 cf61fcea0001
parent 0 d970ebf37754
permissions -rwxr-xr-x
resynchronize code repo with production
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
// JavaScript Document
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
jQuery(document).ready(function() {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
  var device = navigator.userAgent.toLowerCase();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
  var ios = device.match(/(iphone|ipod|ipad)/);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
 //function that returns element's y position
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
    
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
    jQuery("a[href*=#]").on('click', function(e) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
      var scrollTarget = jQuery(this.hash).offset().top;
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
      if(scrollTarget) 
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
          e.preventDefault();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
        if(parseInt(scrollTarget) !== parseInt(jQuery(window).scrollTop())) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
          var nav2 = jQuery("nav");
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
        if (ios) nav2.hide();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
          jQuery('html,body').animate({scrollTop:scrollTarget}, 1000, "swing", function(evt) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
          if (ios) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
            if(scrollTarget == 0) 
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
                nav2.css({position:'absolute', top:jQuery("#intro").height()});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
            else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
                nav2.css({position:'absolute', top:scrollTarget});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
            var nav2clone = jQuery("nav")
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
            nav2clone.show();
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
          }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
      });
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
    }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
    });
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
    if (ios) {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
        jQuery(document).bind('touchmove',function(){
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
          var intro = jQuery("#intro"), nav2 = jQuery("nav");
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
          console.log(nav2.position().top);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
        if(intro.height() != nav2.position().top)
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
        {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
            nav2.css({position:'fixed', top:'0px'});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
            console.log(nav2.position().top);
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
        }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
        else
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
        {
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
            nav2.css({position:'relative', top: ''});
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
        }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
      });   
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
    }
d970ebf37754 first import
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
});