Ir para conteúdo

POWERED BY:

Arquivado

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

marcelo2605

Controlando um scroll de duas maneiras

Recommended Posts

Pesoal, tenho um scroll automático de imagens (plugin Smooth Div Scroll) e controle ele de duas maneiras:

 

1. Botão play/pause

 

$("#btn").toggle(
function(){
	$("#makeMeScrollable").smoothDivScroll("stopAutoScrolling")
	$(this).text('play');
},
function(){
	$("#makeMeScrollable").smoothDivScroll("startAutoScrolling")
	$(this).text('pause');				
}
)

 

E através de duas setas que move o scroll para a direita e para a esquerda.

 

O problema é que, quando pauso o scroll e movo ele usando as setas, preciso clicar duas vezes no botão play/pause para ele pausar novamente o scroll. Ou seja, preciso que as duas ações estejam sincronizadas.

 

Fiz isso, mas não surtiu efeito na ação do movimento:

 

$("#makeMeScrollable").smoothDivScroll({
mouseOverLeftHotSpot: function(eventObj, data) {
	if($('#btn').text() == "play"){
		$('#btn').text('pause');
		$("#makeMeScrollable").smoothDivScroll("stopAutoScrolling")
	}
}
});

Compartilhar este post


Link para o post
Compartilhar em outros sites

então não use o toggle

 

o próprio smoothDivScroll deve ter essa opção

 

http://www.smoothdivscroll.com/options.html

 

nesse endereço tem um manual das configurações do smoothDivScroll

 

http://www.smoothdivscroll.com/publicMethods.html

 

e nesse tem um manual dos métodos do smoothDivScroll

 

de uma olhada kk coisa da um grito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você possui 2 botões certo?

 

você terá q criar os "handlers" do seu evento para cada um deles

 

utilize MouseDown mouseUp

 

mouseDown play

mouseUp stop

 

no entando utilizando dessa maneira seu slider só irá agir em um sentido. nos 2 botões. isso devido a configuração do slider

 

caso eu tenha intendido errado seu problema e você está útilizando essa função somente para "descer" um determinado texto utilizando um único botão da um berro..

 

$("#makeMeScrollable").smoothDivScroll("startAutoScrolling");
$("#makeMeScrollable").smoothDivScroll("stopAutoScrolling");~

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eric, fiz o seguinte:

 

		$("#btn").text('pause');

		$("#makeMeScrollable").smoothDivScroll({autoScrollingStopped: function(eventObj, data) {
			$('#btn').text('play');
			$('#btn').click(function(){
               	$("#makeMeScrollable").smoothDivScroll("startAutoScrolling")
			});
		}});			

		$("#makeMeScrollable").smoothDivScroll({autoScrollingStarted: function(eventObj, data) {
			$('#btn').text('pause');
			$('#btn').click(function(){
               	$("#makeMeScrollable").smoothDivScroll("stopAutoScrolling")
			});
		}});			

 

No começo funciona bem, mas de repente a página trava!

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.