Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

maicon_m

[Resolvido] ReferenceError: slide() is not defined

Recommended Posts

Saudações.

 

Estou tentando resolver um erro, mas não estou tendo sucesso. Têm haver com o setTimeout(). Englobei duas funções dentro de uma para usar no código. Tudo esta funcionando, mas ao usar o setTimeout() na primeira a fim de chamar a segunda, retornar o erro:

 

ReferenceError: slide2 is not defined

setTimeout("slide2()",2000);

 

O código é o seguinte:

 


function slider(){

slide1();

function slide1(){
	$('#foto-bebe').animate({opacity:1},1500);
	setTimeout("slide2()",2000);
}

function slide2(){
	$('.banner').find('img').hide();
	$('#menino').animate({opacity:1},1300);
        setTimeout("slide1()",2000);
}
}

 

Já usei código semelhante outras vezes e não tive problema.

Compartilhar este post


Link para o post
Compartilhar em outros sites

function slider(){

   var slide1 = function(){
       $('#foto-bebe').animate({opacity:1},1500);
   }

   var slide2 = function(){
       escondeBanner();
       $('#menino').animate({opacity:1},1500);
   }

   var escondeBanner = function(){
       $('.banner').find('img').hide();
   }

   return {
       slide1: setTimeout("slide2()",2000),
       slide2: setTimeout("slide1()",2000),
   }
}


var slider = slider();

slider.slide1();
//slider.slide2();

 

 

não sei se isso vai resolve alguma coisa mas oque exatamente voce quer fazer com isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado Vadio pela ajuda, porém não funcionou. Retornou o erro: TypeError: slider is not a function

 

A função slider() é um banner rotativo. Cada função dentro dele seria um slide com suas animações. No código postado simplifiquei as linhas da animação para não atrapalhar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido:

 

Ao chamar no setTimeout() uma função que esta dentro do mesmo escopo que a função atual, não é preciso usar aspas. ex:

 setTimeout(slide1,5000) 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.