Difference between revisions of "Template:CCU Taiwan/Javascript"

(Blanked the page)
Line 1: Line 1:
 +
/*
 +
Helios by HTML5 UP
 +
html5up.net | @ajlkn
 +
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
 +
*/
  
 +
(function($) {
 +
 +
var settings = {
 +
 +
// Carousels
 +
carousels: {
 +
speed: 4,
 +
fadeIn: true,
 +
fadeDelay: 250
 +
},
 +
 +
};
 +
 +
skel.breakpoints({
 +
wide: '(max-width: 1680px)',
 +
normal: '(max-width: 1280px)',
 +
narrow: '(max-width: 960px)',
 +
narrower: '(max-width: 840px)',
 +
mobile: '(max-width: 736px)'
 +
});
 +
 +
$(function() {
 +
 +
var $window = $(window),
 +
$body = $('body');
 +
 +
// Disable animations/transitions until the page has loaded.
 +
$body.addClass('is-loading');
 +
 +
$window.on('load', function() {
 +
$body.removeClass('is-loading');
 +
});
 +
 +
// CSS polyfills (IE<9).
 +
if (skel.vars.IEVersion < 9)
 +
$(':last-child').addClass('last-child');
 +
 +
// Fix: Placeholder polyfill.
 +
$('form').placeholder();
 +
 +
// Prioritize "important" elements on mobile.
 +
skel.on('+mobile -mobile', function() {
 +
$.prioritize(
 +
'.important\\28 mobile\\29',
 +
skel.breakpoint('mobile').active
 +
);
 +
});
 +
 +
// Dropdowns.
 +
$('#nav > ul').dropotron({
 +
mode: 'fade',
 +
speed: 350,
 +
noOpenerFade: true,
 +
alignment: 'center'
 +
});
 +
 +
// Scrolly links.
 +
$('.scrolly').scrolly();
 +
 +
// Off-Canvas Navigation.
 +
 +
// Navigation Button.
 +
$(
 +
'<div id="navButton">' +
 +
'<a href="#navPanel" class="toggle"></a>' +
 +
'</div>'
 +
)
 +
.appendTo($body);
 +
 +
// Navigation Panel.
 +
$(
 +
'<div id="navPanel">' +
 +
'<nav>' +
 +
$('#nav').navList() +
 +
'</nav>' +
 +
'</div>'
 +
)
 +
.appendTo($body)
 +
.panel({
 +
delay: 500,
 +
hideOnClick: true,
 +
hideOnSwipe: true,
 +
resetScroll: true,
 +
resetForms: true,
 +
target: $body,
 +
visibleClass: 'navPanel-visible'
 +
});
 +
 +
// Fix: Remove navPanel transitions on WP<10 (poor/buggy performance).
 +
if (skel.vars.os == 'wp' && skel.vars.osVersion < 10)
 +
$('#navButton, #navPanel, #page-wrapper')
 +
.css('transition', 'none');
 +
 +
// Carousels.
 +
$('.carousel').each(function() {
 +
 +
var $t = $(this),
 +
$forward = $('<span class="forward"></span>'),
 +
$backward = $('<span class="backward"></span>'),
 +
$reel = $t.children('.reel'),
 +
$items = $reel.children('article');
 +
 +
var pos = 0,
 +
leftLimit,
 +
rightLimit,
 +
itemWidth,
 +
reelWidth,
 +
timerId;
 +
 +
// Items.
 +
if (settings.carousels.fadeIn) {
 +
 +
$items.addClass('loading');
 +
 +
$t.onVisible(function() {
 +
var timerId,
 +
limit = $items.length - Math.ceil($window.width() / itemWidth);
 +
 +
timerId = window.setInterval(function() {
 +
var x = $items.filter('.loading'), xf = x.first();
 +
 +
if (x.length <= limit) {
 +
 +
window.clearInterval(timerId);
 +
$items.removeClass('loading');
 +
return;
 +
 +
}
 +
 +
if (skel.vars.IEVersion < 10) {
 +
 +
xf.fadeTo(750, 1.0);
 +
window.setTimeout(function() {
 +
xf.removeClass('loading');
 +
}, 50);
 +
 +
}
 +
else
 +
xf.removeClass('loading');
 +
 +
}, settings.carousels.fadeDelay);
 +
}, 50);
 +
}
 +
 +
// Main.
 +
$t._update = function() {
 +
pos = 0;
 +
rightLimit = (-1 * reelWidth) + $window.width();
 +
leftLimit = 0;
 +
$t._updatePos();
 +
};
 +
 +
if (skel.vars.IEVersion < 9)
 +
$t._updatePos = function() { $reel.css('left', pos); };
 +
else
 +
$t._updatePos = function() { $reel.css('transform', 'translate(' + pos + 'px, 0)'); };
 +
 +
// Forward.
 +
$forward
 +
.appendTo($t)
 +
.hide()
 +
.mouseenter(function(e) {
 +
timerId = window.setInterval(function() {
 +
pos -= settings.carousels.speed;
 +
 +
if (pos <= rightLimit)
 +
{
 +
window.clearInterval(timerId);
 +
pos = rightLimit;
 +
}
 +
 +
$t._updatePos();
 +
}, 10);
 +
})
 +
.mouseleave(function(e) {
 +
window.clearInterval(timerId);
 +
});
 +
 +
// Backward.
 +
$backward
 +
.appendTo($t)
 +
.hide()
 +
.mouseenter(function(e) {
 +
timerId = window.setInterval(function() {
 +
pos += settings.carousels.speed;
 +
 +
if (pos >= leftLimit) {
 +
 +
window.clearInterval(timerId);
 +
pos = leftLimit;
 +
 +
}
 +
 +
$t._updatePos();
 +
}, 10);
 +
})
 +
.mouseleave(function(e) {
 +
window.clearInterval(timerId);
 +
});
 +
 +
// Init.
 +
$window.load(function() {
 +
 +
reelWidth = $reel[0].scrollWidth;
 +
 +
skel.on('change', function() {
 +
 +
if (skel.vars.mobile) {
 +
 +
$reel
 +
.css('overflow-y', 'hidden')
 +
.css('overflow-x', 'scroll')
 +
.scrollLeft(0);
 +
$forward.hide();
 +
$backward.hide();
 +
 +
}
 +
else {
 +
 +
$reel
 +
.css('overflow', 'visible')
 +
.scrollLeft(0);
 +
$forward.show();
 +
$backward.show();
 +
 +
}
 +
 +
$t._update();
 +
 +
});
 +
 +
$window.resize(function() {
 +
reelWidth = $reel[0].scrollWidth;
 +
$t._update();
 +
}).trigger('resize');
 +
 +
});
 +
 +
});
 +
 +
});
 +
 +
})(jQuery);

Revision as of 15:02, 25 July 2017

/* Helios by HTML5 UP html5up.net | @ajlkn Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)

  • /

(function($) {

var settings = {

// Carousels carousels: { speed: 4, fadeIn: true, fadeDelay: 250 },

};

skel.breakpoints({ wide: '(max-width: 1680px)', normal: '(max-width: 1280px)', narrow: '(max-width: 960px)', narrower: '(max-width: 840px)', mobile: '(max-width: 736px)' });

$(function() {

var $window = $(window), $body = $('body');

// Disable animations/transitions until the page has loaded. $body.addClass('is-loading');

$window.on('load', function() { $body.removeClass('is-loading'); });

// CSS polyfills (IE<9). if (skel.vars.IEVersion < 9) $(':last-child').addClass('last-child');

// Fix: Placeholder polyfill. $('form').placeholder();

// Prioritize "important" elements on mobile. skel.on('+mobile -mobile', function() { $.prioritize( '.important\\28 mobile\\29', skel.breakpoint('mobile').active ); });

// Dropdowns. $('#nav > ul').dropotron({ mode: 'fade', speed: 350, noOpenerFade: true, alignment: 'center' });

// Scrolly links. $('.scrolly').scrolly();

// Off-Canvas Navigation.

// Navigation Button. $(

''

) .appendTo($body);

// Navigation Panel. $(

''

) .appendTo($body) .panel({ delay: 500, hideOnClick: true, hideOnSwipe: true, resetScroll: true, resetForms: true, target: $body, visibleClass: 'navPanel-visible' });

// Fix: Remove navPanel transitions on WP<10 (poor/buggy performance). if (skel.vars.os == 'wp' && skel.vars.osVersion < 10) $('#navButton, #navPanel, #page-wrapper') .css('transition', 'none');

// Carousels. $('.carousel').each(function() {

var $t = $(this), $forward = $(''), $backward = $(''), $reel = $t.children('.reel'), $items = $reel.children('article');

var pos = 0, leftLimit, rightLimit, itemWidth, reelWidth, timerId;

// Items. if (settings.carousels.fadeIn) {

$items.addClass('loading');

$t.onVisible(function() { var timerId, limit = $items.length - Math.ceil($window.width() / itemWidth);

timerId = window.setInterval(function() { var x = $items.filter('.loading'), xf = x.first();

if (x.length <= limit) {

window.clearInterval(timerId); $items.removeClass('loading'); return;

}

if (skel.vars.IEVersion < 10) {

xf.fadeTo(750, 1.0); window.setTimeout(function() { xf.removeClass('loading'); }, 50);

} else xf.removeClass('loading');

}, settings.carousels.fadeDelay); }, 50); }

// Main. $t._update = function() { pos = 0; rightLimit = (-1 * reelWidth) + $window.width(); leftLimit = 0; $t._updatePos(); };

if (skel.vars.IEVersion < 9) $t._updatePos = function() { $reel.css('left', pos); }; else $t._updatePos = function() { $reel.css('transform', 'translate(' + pos + 'px, 0)'); };

// Forward. $forward .appendTo($t) .hide() .mouseenter(function(e) { timerId = window.setInterval(function() { pos -= settings.carousels.speed;

if (pos <= rightLimit) { window.clearInterval(timerId); pos = rightLimit; }

$t._updatePos(); }, 10); }) .mouseleave(function(e) { window.clearInterval(timerId); });

// Backward. $backward .appendTo($t) .hide() .mouseenter(function(e) { timerId = window.setInterval(function() { pos += settings.carousels.speed;

if (pos >= leftLimit) {

window.clearInterval(timerId); pos = leftLimit;

}

$t._updatePos(); }, 10); }) .mouseleave(function(e) { window.clearInterval(timerId); });

// Init. $window.load(function() {

reelWidth = $reel[0].scrollWidth;

skel.on('change', function() {

if (skel.vars.mobile) {

$reel .css('overflow-y', 'hidden') .css('overflow-x', 'scroll') .scrollLeft(0); $forward.hide(); $backward.hide();

} else {

$reel .css('overflow', 'visible') .scrollLeft(0); $forward.show(); $backward.show();

}

$t._update();

});

$window.resize(function() { reelWidth = $reel[0].scrollWidth; $t._update(); }).trigger('resize');

});

});

});

})(jQuery);