KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.62
System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64
User : www ( 80)
PHP Version : 8.3.8
Disable Function : NONE
Directory :  /domains/chinatranslationsweb/cht/assets/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /domains/chinatranslationsweb/cht/assets/js/theme.js
(function($) {
	"use strict";

	/**
	 * debouncing function from John Hann
	 * http://unscriptable.com/index.php/2009/03/20/debouncing-javascript-methods/
	 */
	var debounce = function (func, threshold, execAsap) {
		var timeout;

		return function debounced () {
			var obj = this, args = arguments;
			function delayed () {
				if (!execAsap)
					func.apply(obj, args);
				timeout = null;
			};

			if (timeout)
				clearTimeout(timeout);
			else if (execAsap)
				func.apply(obj, args);

			timeout = setTimeout(delayed, threshold || 100);
		};
	};

	/**
	 * Register smartresize plugin
	 */
	$.fn['smartresize'] = function(fn){
		return fn ? this.bind('resize', debounce(fn)) : this.trigger('smartresize');
	};


	/**
	 * Initialize masonry layout with blog style
	 * and mosaic style
	 * 
	 * @return  void
	 */
	var init_layout = function () {
		var
		blog_layout = $('.blog-masonry'),
		mosaic_layout = $('.masonry'),
		init_blog_layout = function () {
			blog_layout.masonry({
				itemSelector : '.item',
			});
		},
		init_mosaic_layout = function () {
			mosaic_layout.masonry({
				itemSelector: 'article.item',
				isResizeBound: false,
				isInitLayout: false
			});
		};

		// Initialize blog layout
		if (blog_layout.size() != 0) {
			$(window).on('load', init_blog_layout);
		}

		if (mosaic_layout.size() != 0) {
			var refresh_layout = function () {
				$('article.item', mosaic_layout).each(function () {
					$(this).height($(this).width());
					$('.tm-content-inner', this).height($(this).width());
				});

				mosaic_layout.masonry('layout');
			}

			$(window).on('load', init_mosaic_layout);
			$(window).on('load', refresh_layout);
			$(window).smartresize(refresh_layout);
		}
	};

	/**
	 * Initialize sticky navigator
	 * 
	 * @return  void
	 */
	var init_sticky_nav = function () {
		var
		nav = $('.tm-sticky-menu');

		if (nav.size() != 0) {
			var
			offset_top = nav.offset().top,
			nav_height = nav.height(),
			place_holder = $('<div />', {
				height: nav_height
			});

			// Inject place holder for the nav
			place_holder.hide()
			nav.after(place_holder);

			$(window).on('load scroll', function () {
				if ($(window).scrollTop() > offset_top) {
					nav.addClass('tm-fixed');
					place_holder.show();
				}
				else {
					place_holder.hide();
					nav.removeClass('tm-fixed');
				}
			});

			$(window).smartresize(function () {
				offset_top = nav.offset().top;
			});
		}
	};

	var init_portfolio = function () {
		var
		grid = $('#tm-portfolio .tm-content-isotope'),
		filters = $('#tm-portfolio .tm-filter a'),
		active = $('#tm-portfolio .tm-filter a.selected');

		if (grid.size() != 0) {
			$(window).on('load', function () {
				grid.isotope({
					filter: '*',
					animationOptions: {
						duration: 750,
						easing: 'linear',
						queue: false,
					}
				});

				filters.on('click', function (e) {
					e.preventDefault();

					// Trigger isotope to filter data
					grid.isotope({
						filter: $(this).attr('data-filter')
					});

					// Remove current active class
					active.removeClass('selected');

					// Assign active object to clicked element
					active = $(this);
					active.addClass('selected');
				});
			});
		}
	};

	var init_switch_buttons = function () {
		var
		buttons = $('a.button-switch');
		buttons.on('click',function(e) {
			buttons.removeClass('active');
			$(this).addClass('active');

			if ($(this).hasClass('grid')) {
				$('#tm-blog')
					.removeClass('tm-blog-style-list')
					.addClass('tm-blog-style-grid');
			}
			else if($(this).hasClass('list')) {
				$('#tm-blog')
					.removeClass('tm-blog-style-grid')
					.addClass('tm-blog-style-list');
			}
		});
	};

	var init_tabs = function () {
		$('.tm-tabs > ul a').on('click', function (e) {
			e.preventDefault();

			var
			elm = $(this),
			parent = elm.closest('.tm-tabs'),
			tab_page = $(elm.attr('href'), parent);

			parent.find('> ul a').removeClass('selected');
			parent.find('.tab-content').hide();

			elm.addClass('selected');
			tab_page.fadeIn();
		});

		$('.tm-tabs > ul li:first-child a').trigger('click');
	};

	var init_accordions = function () {
		var acc_wrapper = $('.tm-accordion');
		if (acc_wrapper.length > 0) 
		{
			$('.tm-accordion .accordion-container').hide();
			$.each(acc_wrapper, function(index, item){
				$(this).find($('.accordion-title')).first().addClass('active').next().show();
				
			});
			$('.accordion-title').on('click', function(e) {
				if( $(this).next().is(':hidden') ) {
					$(this).parent().find($('.active')).removeClass('active').next().slideUp(300);
					$(this).toggleClass('active').next().slideDown(300);
				}
				e.preventDefault();
			});
		}
	};

	var init_progress_bar = function () {
		$(".tm-progress-bar-inner").each(function() {
			$(this).data("origWidth", ($(this).width() / $(this).parent().width()) * 100)
			  .width(0)
			  .animate({ width: $(this).data("origWidth") + "%" }, 1200);
		});
	};

	var init_animate_scroll = function () {
		$(window).on('load scroll', function () {
			$('.setanimate').each(function() {
				this.getBoundingClientRect().top < $(window).height()
					? $(this).addClass('visible')
					: $(this).removeClass('visible');
			});
		});
	};

	var init_countdown = function () {
		var 
		simple_style = function (data) {
			$(this.el).html( + this.leadingZeros(data.years, 4) + " <span>years</span>" + this.leadingZeros(data.days, 3) + " <span>days</span>" + this.leadingZeros(data.hours, 2) + " <span>hrs</span>" + this.leadingZeros(data.min, 2) + " <span>min</span>" + this.leadingZeros(data.sec, 2) + " <span>sec</span>");
		},
		boxed_style = function (data) {
			$(this.el).html("<div>" + this.leadingZeros(data.years, 4) + " <span>years</span></div><div>" + this.leadingZeros(data.days, 3) + " <span>days</span></div><div>" + this.leadingZeros(data.hours, 2) + " <span>hrs</span></div><div>" + this.leadingZeros(data.min, 2) + " <span>min</span></div><div>" + this.leadingZeros(data.sec, 2) + " <span>sec</span></div>");
		};

		$('.tm-countdown').each(function () {
			$(this).countdown({
				date: $(this).attr('data-endtime'),
				render: $(this).hasClass('simple') ? simple_style : boxed_style
			});
		});
	};

	var init_contact_form = function () {
		if ($('.contact-form form').size() != 0) {
			$('.contact-form form').validate({
				submitHandler: function (frm) {
					var $form = $(frm);

					$.ajax($form.attr('action'), {
						type: 'POST',
						data: $form.serializeArray(),
						dataType: 'JSON',
						beforeSend: function () {
							$form.find(':input').attr('disabled', 'disabled');
							$form.find('.tm-alert').remove();
							$form.addClass('form-sending');
						},
						success: function (response) {
							$form.prepend(
								$('<div />', {
									'class': 'tm-alert ' + response.status,
									'text' : response.content
								}).append(
									$('<a class="close" href="javascript:void(0)"><i class="fa fa-times"></i></a>')
								)
							);
							$form.find(':input').val('');
						},
						complete: function (xhr, status, error_thrown) {
							$form.find(':input').removeAttr('disabled');
							$form.removeClass('form-sending');
						}
					});
				}
			});
		}
	};

	var init_newsletter = function () {
		$('form.newsletter').on('submit', function (e) {
			var form = $(this);
			e.preventDefault();


			$.ajax(form.attr('action'), {
				type: 'POST',
				data: form.serializeArray(),
				dataType: 'JSON',
				beforeSend: function () {
					form.find(':input').attr('disabled', 'disabled');
					form.find('.tm-alert').remove();
					form.addClass('form-sending');
				},
				success: function (response) {
					form.prepend(
						$('<div />', {
							'class': 'tm-alert ' + response.status,
							'text' : response.content
						}).append(
							$('<a class="close" href="javascript:void(0)"><i class="fa fa-times"></i></a>')
						)
					);
					form.find(':input').val('');
				},
				complete: function (xhr, status, error_thrown) {
					form.find(':input').removeAttr('disabled');
					form.removeClass('form-sending');
				}
			});
		});
	};

	// DOMReady event
	$(function () {
		init_layout();
		init_sticky_nav();
		init_portfolio();
		init_switch_buttons();
		init_tabs();
		init_accordions();
		init_progress_bar();
		init_animate_scroll();
		init_countdown();
		init_contact_form();
		init_newsletter();

		// Gotop button
		$('#tm-gotop').on('click', function(e) {
			e.preventDefault();
			$("html, body").animate({ scrollTop: 0 }, 1000);
		});
		$(window).on('load scroll', function() {
			$(window).scrollTop() > 0
				? $('#tm-gotop').addClass('tm-visible')
				: $('#tm-gotop').removeClass('tm-visible');
		});

		// Tiny NAV
		//$('.tm-menu-simple').tinyNav({
		//	active: 'current-menu-item'
		//});

		// Pretty photo
		$("a[data-rel^='prettyPhoto']").prettyPhoto({hook: 'data-rel'});

		// Flex slider
		$('.flexslider').flexslider({
			animation: 'fade',
			prevText: '<i class="fa fa-angle-left"></i>',
			nextText: '<i class="fa fa-angle-right"></i>',
		});

		// Flex slider with carousel style
		$('.gallery-carousel').flexslider({
			animation: "slide",
			animationLoop: false,
			itemWidth: 200,
			itemMargin: 10,
			minItems: 2,
			maxItems: 4,
			prevText: '<i class="fa fa-angle-left"></i>',
			nextText: '<i class="fa fa-angle-right"></i>',
		});

		// Flex slider with thumbnail navigator
		$('#tm-carousel').flexslider({
			animation: "slide",
			controlNav: false,
			animationLoop: false,
			slideshow: false,
			itemWidth: 75,
			itemMargin: 5,
			asNavFor: '#tm-slider',
			prevText: '<i class="fa fa-angle-left"></i>',
			nextText: '<i class="fa fa-angle-right"></i>',
		});
		
		$('#tm-slider').flexslider({
			animation: "slide",
			controlNav: false,
			animationLoop: false,
			slideshow: false,
			sync: "#tm-carousel",
			prevText: '<i class="fa fa-angle-left"></i>',
			nextText: '<i class="fa fa-angle-right"></i>',
		});

		// Dismiss button for message box
		$(".tm-alert a.close").live('click', function(){
			$(this).closest(".tm-alert").fadeOut();
		});

		// Goto top button
		$('.tm-to-top').click(function () {
			$('body,html').animate({
				scrollTop: 0 
			}, 800); 
			return false;
		});

		// Parallax background
		$('.tm-parallax[data-type="background"]').each(function(){
			var $bgobj = $(this); // assigning the object

			$(window).scroll(function() {						   
				var yPos = -($(window).scrollTop() / $bgobj.data('speed')); 
				var coords = '50%'+ (yPos + 0) + 'px';
				$bgobj.css({ backgroundPosition: coords });
			}); // window scroll Ends
		});

		// Modal
		$(function(){
			$('#loginform').submit(function(e){
			    return false;
			});
						  
			$('.tm-modal > a').leanModal({ top: 110, overlay: 0.8, closeButton: ".hidemodal" });
		});
	});

	// Woocommerce - Filter by price
	$(function() {
		$( ".price_slider" ).slider({
			range: true,
			min: 0,
			max: 100,
			values: [ 0, 75 ],
			slide: function( event, ui ) {
				$( ".price_label > input " ).val( "€" + ui.values[ 0 ] + " - €" + ui.values[ 1 ] );
				}
		});

		$( ".price_label > input " ).val( "€" + $( ".price_slider" ).slider( "values", 0 ) +
		" - €" + $( ".price_slider" ).slider( "values", 1 ) );
	});

	// Woocommerce - Spinner
	$(function() {
		$( "#spinner" ).spinner({
			spin: function( event, ui ) {
				if ( ui.value > 10 ) {
					$( this ).spinner( "value", -10 );
					return false;
				} else if ( ui.value < -10 ) {
					$( this ).spinner( "value", 10 );
					return false;
				}
			}
		});
	});
	

})(jQuery);


/*! layer mobile-v1.5 弹层组件移动版 License LGPL http://sentsin.com/layui/layer/ By 贤心 */
;!function(a){"use strict";var b="";b=b?b:document.scripts[document.scripts.length-1].src.match(/[\s\S]*\//)[0];var c=document,d="querySelectorAll",e="getElementsByClassName",f=function(a){return c[d](a)};document.head.appendChild(function(){var a=c.createElement("link");return a.href=b+"../css/layer.css",a.type="text/css",a.rel="styleSheet",a.id="layermcss",a}());var g={type:0,shade:!0,shadeClose:!0,fixed:!0,anim:!0};a.ready={extend:function(a){var b=JSON.parse(JSON.stringify(g));for(var c in a)b[c]=a[c];return b},timer:{},end:{}};var h=0,i=["layermbox"],j=function(a){var b=this;b.config=ready.extend(a),b.view()};j.prototype.view=function(){var a=this,b=a.config,d=c.createElement("div");a.id=d.id=i[0]+h,d.setAttribute("class",i[0]+" "+i[0]+(b.type||0)),d.setAttribute("index",h);var g=function(){var a="object"==typeof b.title;return b.title?'<h3 style="'+(a?b.title[1]:"")+'">'+(a?b.title[0]:b.title)+'</h3><button class="layermend"></button>':""}(),j=function(){var a,c=(b.btn||[]).length;return 0!==c&&b.btn?(a='<span type="1">'+b.btn[0]+"</span>",2===c&&(a='<span type="0">'+b.btn[1]+"</span>"+a),'<div class="layermbtn">'+a+"</div>"):""}();if(b.fixed||(b.top=b.hasOwnProperty("top")?b.top:100,b.style=b.style||"",b.style+=" top:"+(c.body.scrollTop+b.top)+"px"),2===b.type&&(b.content='<i></i><i class="laymloadtwo"></i><i></i><div>'+(b.content||"")+"</div>"),d.innerHTML=(b.shade?"<div "+("string"==typeof b.shade?'style="'+b.shade+'"':"")+' class="laymshade"></div>':"")+'<div class="layermmain" '+(b.fixed?"":'style="position:static;"')+'><div class="section"><div class="layermchild '+(b.className?b.className:"")+" "+(b.type||b.shade?"":"layermborder ")+(b.anim?"layermanim":"")+'" '+(b.style?'style="'+b.style+'"':"")+">"+g+'<div class="layermcont">'+b.content+"</div>"+j+"</div></div></div>",!b.type||2===b.type){var l=c[e](i[0]+b.type),m=l.length;m>=1&&k.close(l[0].getAttribute("index"))}document.body.appendChild(d);var n=a.elem=f("#"+a.id)[0];setTimeout(function(){try{n.className=n.className+" layermshow"}catch(a){return}b.success&&b.success(n)},1),a.index=h++,a.action(b,n)},j.prototype.action=function(a,b){var c=this;if(a.time&&(ready.timer[c.index]=setTimeout(function(){k.close(c.index)},1e3*a.time)),a.title&&(b[e]("layermend")[0].onclick=function(){a.cancel&&a.cancel(),k.close(c.index)}),a.btn)for(var d=b[e]("layermbtn")[0].children,f=d.length,g=0;f>g;g++)d[g].onclick=function(){var b=this.getAttribute("type");0==b?(a.no&&a.no(),k.close(c.index)):a.yes?a.yes(c.index):k.close(c.index)};if(a.shade&&a.shadeClose){var h=b[e]("laymshade")[0];h.onclick=function(){k.close(c.index,a.end)},h.ontouchmove=function(){k.close(c.index,a.end)}}a.end&&(ready.end[c.index]=a.end)};var k={v:"1.5",index:h,open:function(a){var b=new j(a||{});return b.index},close:function(a){var b=f("#"+i[0]+a)[0];b&&(b.innerHTML="",c.body.removeChild(b),clearTimeout(ready.timer[a]),delete ready.timer[a],"function"==typeof ready.end[a]&&ready.end[a](),delete ready.end[a])},closeAll:function(){for(var a=c[e](i[0]),b=0,d=a.length;d>b;b++)k.close(0|a[0].getAttribute("index"))}};"function"==typeof define?define(function(){return k}):a.layer=k}(window);

$(".tinynav").click(function() { 
layer.open({
	type:1,
    content:'<div style="padding:20px; line-height: 30px;"><ul class="tm-menu tm-menu-simple"><li class="current-menu-item"><a href="./">首頁</a></li><li><a href="about.html">關於尚龍</a></li><li><a href="services.html">服務</a></li><li><a href="partners.html">合作夥伴</a></li><li><a href="clients.html">客戶</a></li><li><a href="history.html">歷史</a></li><li><a href="employment.html">招聘</a></li><li><a href="contact.html">聯絡</a></li></ul></div>'
})
});

Anon7 - 2021