mirror of
https://github.com/dawidolko/Website-Templates.git
synced 2026-03-24 09:12:17 +00:00
Website templates
This commit is contained in:
212
html5-portfolio/js/jquery.faded.js
Normal file
212
html5-portfolio/js/jquery.faded.js
Normal file
@@ -0,0 +1,212 @@
|
||||
/*
|
||||
* faded 0.3.1 - jQuery plugin
|
||||
* written by Nathan Searles
|
||||
* http://nathansearles.com/faded/
|
||||
*
|
||||
* Copyright (c) 2009 Nathan Searles (http://nathansearles.com/)
|
||||
* Dual licensed under the MIT (MIT-LICENSE.txt)
|
||||
* and GPL (GPL-LICENSE.txt) licenses.
|
||||
*
|
||||
* Built for jQuery library
|
||||
* http://jquery.com
|
||||
* Compatible with jQuery 1.3.2+
|
||||
*
|
||||
*/
|
||||
if(typeof jQuery != "undefined") {
|
||||
jQuery(function($) {
|
||||
$.fn.extend({
|
||||
faded: function(options) {
|
||||
var settings = $.extend({}, $.fn.faded.defaults, options);
|
||||
return this.each(
|
||||
function() {
|
||||
if($.fn.jquery < "1.3.1") {return;}
|
||||
var $t = $(this);
|
||||
var $c = $t.children(":nth-child(1)");
|
||||
var o = $.metadata ? $.extend({}, settings, $t.metadata()) : settings;
|
||||
var total = $c.children().size();
|
||||
var next = 0, prev = 0, number = 0, currentitem = 0, restart = 0, restartinterval = 0;
|
||||
var loaded,active,imgSrc,clicked,current;
|
||||
if (o.random) {
|
||||
$.fn.reorder = function(callback) {
|
||||
function randOrd() { return(Math.round(Math.random())-0.5); }
|
||||
return($(this).each(function() {
|
||||
var $this = $(this);
|
||||
var $children = $this.children();
|
||||
var childCount = $children.length;
|
||||
if (childCount > 1) {
|
||||
$children.hide();
|
||||
var indices = new Array();
|
||||
for (i=0;i<childCount;i++) { indices[indices.length] = i; }
|
||||
indices = indices.sort(randOrd);
|
||||
$.each(indices,function(j,k) {
|
||||
var $child = $children.eq(k);
|
||||
var $clone = $child.clone(true);
|
||||
$clone.show().appendTo($this);
|
||||
if (callback !== undefined) {
|
||||
callback($child, $clone);
|
||||
}
|
||||
$child.remove();
|
||||
});
|
||||
}
|
||||
}));
|
||||
};
|
||||
$c.reorder();
|
||||
}
|
||||
function pause() {
|
||||
clearInterval(autoplay);
|
||||
clearTimeout(restart);
|
||||
restart = setTimeout(function() {
|
||||
autoplay = setInterval(function(){
|
||||
animate("next");
|
||||
},o.autoplay);
|
||||
},o.autorestart);
|
||||
}
|
||||
$c.css({position:"relative"});
|
||||
$c.children().css({
|
||||
position:"absolute",
|
||||
top: 0,
|
||||
left: 0,
|
||||
zIndex: 0,
|
||||
display:"none"
|
||||
});
|
||||
if (o.autoheight) {
|
||||
$c.animate({height: $c.children(":eq(0)").outerHeight()},o.autoheight);
|
||||
}
|
||||
if (o.pagination) {
|
||||
if (o.autopagination) {
|
||||
$t.append("<ul class="+o.pagination+"></ul>");
|
||||
$c.children().each(function(){
|
||||
$("."+o.pagination+"",$t).append("<li><a rel="+number+" href=\"#\" >"+(number+1)+"</a></li>");
|
||||
number++;
|
||||
});
|
||||
}
|
||||
$("."+o.pagination+" li a:eq(0)",$t).parent().addClass("current");
|
||||
$("."+o.pagination+" li a",$t).click(function(){
|
||||
current = $("."+o.pagination+" li.current a",$t).attr("rel");
|
||||
clicked = $(this).attr("rel");
|
||||
if (current != clicked) {animate("pagination",clicked,current);}
|
||||
if(o.autoplay){pause();}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
if (o.sequentialloading&&$c.children()[0].tagName=="IMG") {
|
||||
$c.css({background:"url("+o.loadingimg+") no-repeat 50% 50%"});
|
||||
imgSrc = $("img:eq(0)",$c).attr("src");
|
||||
$("img:eq(0)",$c).attr("src", imgSrc).load(function() {
|
||||
$(this).fadeIn(o.speed,function(){
|
||||
loaded = true;
|
||||
});
|
||||
});
|
||||
} else {
|
||||
$c.find(":eq(0)").fadeIn(o.speed,function(){
|
||||
loaded = true;
|
||||
});
|
||||
}
|
||||
if (o.bigtarget) {
|
||||
$c.css({"cursor":"pointer"});
|
||||
$c.click(function(){
|
||||
animate("next");
|
||||
if(o.autoplay){
|
||||
if (o.autorestart) {
|
||||
pause();
|
||||
} else {
|
||||
clearInterval(autoplay);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
if (o.autoplay) {
|
||||
autoplay = setInterval(function(){
|
||||
animate("next");
|
||||
},o.autoplay);
|
||||
pause();
|
||||
}
|
||||
$("."+o.nextbtn,$t).click(function(){
|
||||
animate("next");
|
||||
if(o.autoplay){
|
||||
if (o.autorestart) {
|
||||
pause();
|
||||
} else {
|
||||
clearInterval(autoplay);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
$("."+o.prevbtn,$t).click(function(){
|
||||
animate("prev");
|
||||
if(o.autoplay){
|
||||
if (o.autorestart) {
|
||||
pause();
|
||||
} else {
|
||||
clearInterval(autoplay);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
});
|
||||
function animate(dir,clicked,current){
|
||||
if (!active&&loaded) {
|
||||
active=true;
|
||||
switch(dir) {
|
||||
case "next":
|
||||
prev = next;
|
||||
next = currentitem*1+1;
|
||||
if (total === next) { next = 0; }
|
||||
break;
|
||||
case "prev":
|
||||
prev = next;
|
||||
next = currentitem*1-1;
|
||||
if (next === -1) { next = total-1; }
|
||||
break;
|
||||
case "pagination":
|
||||
next = clicked;
|
||||
prev = current;
|
||||
break;
|
||||
}
|
||||
if (o.pagination) {
|
||||
$(".pagination li.current",$t).removeClass("current");
|
||||
$(".pagination li a:eq("+next+")",$t).parent().addClass("current");
|
||||
}
|
||||
if (o.crossfade) {
|
||||
$c.children(":eq("+next+")").css({zIndex:10}).fadeIn(o.speed,function(){
|
||||
$c.children(":eq("+prev+")").css({display:"none",zIndex:0});
|
||||
$(this).css({zIndex:0});
|
||||
currentitem = next;
|
||||
active = false;
|
||||
});
|
||||
} else {
|
||||
$c.children(":eq("+prev+")").fadeOut(o.speed,function(){
|
||||
if (o.autoheight) {
|
||||
$c.animate({height: $c.children(":eq("+next+")").outerHeight()},o.autoheight,function(){
|
||||
$c.children(":eq("+next+")").fadeIn(o.speed);
|
||||
});
|
||||
} else {
|
||||
$c.children(":eq("+next+")").fadeIn(o.speed);
|
||||
}
|
||||
currentitem = next;
|
||||
active = false;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
});
|
||||
$.fn.faded.defaults = {
|
||||
speed: 300,
|
||||
crossfade: false,
|
||||
bigtarget: false,
|
||||
sequentialloading: false,
|
||||
autoheight: false,
|
||||
pagination: "pagination",
|
||||
autopagination: true,
|
||||
nextbtn: "next",
|
||||
prevbtn: "prev",
|
||||
loadingimg: false,
|
||||
autoplay: false,
|
||||
autorestart: false,
|
||||
random: false
|
||||
};
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user