main.js 5.9 KB
(function ($) {
  "use strict";

	var lang = navigator.language || navigator.userLanguage;//常规浏览器语言和IE浏览器
  lang = lang.toLowerCase();
  
  //第一次访问时自动切换语言并重定向到首页
  if (!$.cookie("lang")) {
  	$.cookie("lang",lang);
  	
  	if (lang == 'zh-cn') {
/*  		var slashNums = window.location.pathname.split("/").length - 1;*/
			window.location.replace('../');
			
	  } else if (lang == 'zh-tw' || lang == 'zh-hk') {
	  	var slashNums = window.location.pathname.split("/").length - 1;
  		if (slashNums == 1) {
  			window.location.replace('./zh-hant');
  		} else if (slashNums == 2) {
  			window.location.replace('../zh-hant');
  		}
	    
	  }/* else {
	  	var slashNums = window.location.pathname.split("/").length - 1;
  		if(slashNums == 1) {
  			window.location.replace('./en');
  		}else if(slashNums == 2) {
  			window.location.replace('../en');
  		}
	  }*/
  }

  // Preloader (if the #preloader div exists)
  $(window).on('load', function () {
    if ($('#preloader').length) {
      $('#preloader').delay(100).fadeOut('slow', function () {
        $(this).remove();
      });
    }
  });



  // Back to top button
  $(window).scroll(function() {
    if ($(this).scrollTop() > 100) {
      $('.back-to-top').fadeIn('slow');
    } else {
      $('.back-to-top').fadeOut('slow');
    }
  });
  $('.back-to-top').click(function(){
    $('html, body').animate({scrollTop : 0},1500, 'easeInOutExpo');
    return false;
  });

  // Initiate the wowjs animation library
  new WOW().init();

  // Header scroll class
  $(window).scroll(function() {
    if ($(this).scrollTop() > 100) {
      $('#header').addClass('header-scrolled');
    } else {
      $('#header').removeClass('header-scrolled');
    }
  });

  if ($(window).scrollTop() > 100) {
    $('#header').addClass('header-scrolled');
  }

  // Smooth scroll for the navigation and links with .scrollto classes
  $('.main-nav a, .mobile-nav a, .scrollto').on('click', function() {
    if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
      var target = $(this.hash);
      if (target.length) {
        var top_space = 0;

        if ($('#header').length) {
          top_space = $('#header').outerHeight();

          if (! $('#header').hasClass('header-scrolled')) {
            top_space = top_space - 20;
          }
        }

        $('html, body').animate({
          scrollTop: target.offset().top - top_space
        }, 1500, 'easeInOutExpo');

        if ($(this).parents('.main-nav, .mobile-nav').length) {
          $('.main-nav .active, .mobile-nav .active').removeClass('active');
          $(this).closest('li').addClass('active');
        }

        if ($('body').hasClass('mobile-nav-active')) {
          $('body').removeClass('mobile-nav-active');
          $('.mobile-nav-toggle i').toggleClass('fa-times fa-bars');
          $('.mobile-nav-overly').fadeOut();
        }
        return false;
      }
    }
  });

  // Navigation active state on scroll
  var nav_sections = $('section');
  var main_nav = $('.main-nav, .mobile-nav');
  var main_nav_height = $('#header').outerHeight();

  $(window).on('scroll', function () {
    var cur_pos = $(this).scrollTop();
  
    nav_sections.each(function() {
      var top = $(this).offset().top - main_nav_height,
          bottom = top + $(this).outerHeight();
  
      if (cur_pos >= top && cur_pos <= bottom) {
        main_nav.find('li').removeClass('active');
        main_nav.find('a[href="#'+$(this).attr('id')+'"]').parent('li').addClass('active');
      }
    });
  });

  // jQuery counterUp (used in Whu Us section)
  $('[data-toggle="counter-up"]').counterUp({
    delay: 10,
    time: 1000
  });

  // Porfolio isotope and filter
  $(window).on('load', function () {
    var portfolioIsotope = $('.portfolio-container').isotope({
      itemSelector: '.portfolio-item'
    });
    if (window.location.hash != "") {
    	location.href = window.location.hash;
    }
     
    $('#portfolio-flters li').on( 'click', function() {
      $("#portfolio-flters li").removeClass('filter-active');
      $(this).addClass('filter-active');
      
      portfolioIsotope.isotope({ filter: $(this).data('filter') });
      
      orderContorl($(this).data('filter'));

    });
  });

  // Testimonials carousel (uses the Owl Carousel library)
  $(".testimonials-carousel").owlCarousel({
    autoplay: true,
    dots: true,
    loop: true,
    items: 1
  });
  
  function orderContorl(filter){
  	if (filter === "*") {
  		filter = "";
  	}
  	
  	$(".portfolio-container .about-extra div").removeClass("order-lg-1");
  	$(".portfolio-container .about-extra div").removeClass("order-lg-2");
  	
  	$(".portfolio-container .about-extra"+filter+":odd .item-text").addClass("order-lg-1");
  	$(".portfolio-container .about-extra"+filter+":odd .item-image").addClass("order-lg-2");

    $(".portfolio-container .about-extra .item-text").css("visibility","visible");
    $(".portfolio-container .about-extra .item-image").css("visibility","visible");
  }

  $(document).on('click', '.lang-cn',function(){ 
    var url = window.location.pathname;
    if (url.startsWith("/zh-hant") || url.startsWith("/en")) {
    	if (url.startsWith("/zh-hant")) {
    		url = url.replace("/zh-hant","");
    	} else {
    		url = url.replace("/en","");
    	}
    	window.location.href = url;
    }    
  });
  
  $(document).on('click', '.lang-tc',function(){    
    var url = window.location.pathname;
    if (url.startsWith("/en")) {
        url = url.replace("/en","/zh-hant");
    } else if (!url.startsWith("/zh-hant")){
        url = "/zh-hant" + url;
    }
    window.location.href = url;
  });  
  
  $(document).on('click', '.lang-en',function(){    
    var url = window.location.pathname;
    if (url.startsWith("/zh-hant")) {
        url = url.replace("/zh-hant","/en");
    } else if (!url.startsWith("/en")){
        url = "/en" + url;
    }
    window.location.href = url;
  });

})(jQuery);