Skip to content

Instantly share code, notes, and snippets.

@kakobotasso
Created November 12, 2012 18:31
Show Gist options
  • Save kakobotasso/4061022 to your computer and use it in GitHub Desktop.
Save kakobotasso/4061022 to your computer and use it in GitHub Desktop.
Galeria provisoria
$(function(){
// CONFIG
var abreGaleria = 0;
var total;
var indice = -1;
var indiceAnt;
var _left = 0;
var interval;
/*$("#galeria").hover(function(){
if( $(this).hasClass("sumiuTudo") ){
$("#guardaSelectorGaleria").show(500);
$("#guardaContadorLegenda").show(500);
$(".setas").show(500);
$("#guardaGaleriasDisponiveis").show(500);
validaSetas();
$(this).removeClass("sumiuTudo");
}
},function(){
someTudo();
$(this).addClass("sumiuTudo");
});*/
function someTudo(){
interval = setInterval(function(){
$("#guardaSelectorGaleria").hide(500);
$("#guardaContadorLegenda").hide(500);
$(".setas").hide(500);
$("#guardaGaleriasDisponiveis").hide(500);
clearInterval(interval);
}, 2000);
}
/* SELETOR CATEGORIA */
$("#selectorGaleria").click(function(){
if( !$(this).hasClass('aberto') ){
$("#hideThis").slideDown(500);
$(this).addClass('aberto');
}else{
$("#hideThis").slideUp(500);
$(this).removeClass('aberto');
}
});
$("#hideThis ul li a").click(function(){
$("#hideThis").slideUp(500);
$("#selectorGaleria").text( $(this).html() ).removeClass('aberto');
abreGaleria = $("#hideThis ul li a").index(this); // DEFINE QUAL GALERIA SERA ABERTA
});
/* / SELETOR CATEGORIA */
// TOTAL DE FOTOS
total = $("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+") li").length;
$("#guardaContadorLegenda .total").text(total);
// ATRIBUI DIRACAO AS SETAS
document.getElementById("setaEsq").direcao = -1;
document.getElementById("setaDir").direcao = 1;
// CLICK FOTOS
$("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+") li a").click(function(){
$("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+") li a").removeClass('marcado');
$(this).addClass('marcado');
indiceAnt = indice;
indice = $("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+") li a").index(this);
var legenda = $(this).find('img').attr('alt');
var src = $(this).find('img').attr('src').replace("thumb","ampliada");
$("#guardaContadorLegenda .atual").text(indice+1);
$("#guardaContadorLegenda .legenda").text(legenda);
$(".img").fadeOut(500, function(){
$(".img").attr("src", src);
$(".img").attr("alt", legenda);
$(".img").fadeIn(500);
});
validaSetas();
validaPassada(indice, indiceAnt);
});
// VALIDA A EXIBICAO DAS SETA
function validaSetas(){
if( total > 1 ){
if( indice == 0 ){
$("#setaEsq").hide();
$("#setaDir").show();
}else if( indice == total-1 ){
$("#setaEsq").show();
$("#setaDir").hide();
}else{
$("#setaEsq").show();
$("#setaDir").show();
}
}else{
$("#setaEsq").hide();
$("#setaDir").hide();
}
}
validaSetas();
function validaPassada(_i, _ia){
if( total > 7 ){
// VARIFICA SE O CLICADO NAO EH UM DOS 3 PRIMEIROS E NEM UM DOS 3 ULTIMOS
if(_left <= 0 || _left < (-((total-7)*81)) ){
// VERIFICA SE ESTA INDO OU VOLTANDO
if( _i > _ia ){
var ida = (total-1)-_i;
if( ida > 3 ){
_left += (-((_i - _ia)*81));
animaLista(_left)
}
}else if( _i < _ia ){
var volta = _i;
if( volta > 2){
_left += (_left <= -81) ? (_ia - _i)*81 : 0;
animaLista(_left);
}
}
}
}
}
function animaLista(_L){
if(_L > 0){
_L = 0;
}else if( _L < (-((total-7)*81)) ){
_L = (-((total-7)*81));
}
$("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+")").animate({left: _L},500);
}
// CLICK DAS SETAS
$(".setas").click(function(){
$("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+") li a").eq(indice + (this.direcao)).trigger("click");
});
// INICIALIZANDO
$("#guardaGaleriasDisponiveis ul:eq("+abreGaleria+") li a").eq(0).trigger('click');
$("#guardaSelectorGaleria ul li:eq(0) a").trigger('click');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment