Ir para conteúdo

POWERED BY:

Arquivado

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

Leonardo Dias_131708

[Resolvido] condição IF

Recommended Posts

Fala Galera,

 

Eu tenho algumas li's na minha página, com uma função de click nelas via JS para navegar entre divs, dessa forma:

 

imagem1.JPG

 

São 7 divs difrentes que são acessadas através dessas 'bolinhas', quando estiver da div atual, a respectiva bolinha fica roxa.

 

Eu queria fazer uma forma, pra quando a li for acima da atual não ficar clicável, somente quando for abaixo da atual, assim o usuário não pode ir pra frente, somente ir pra trás.

 

A função que faz o click das bolinhas pra frente e pra trás é essa:

 

$("#ul-nav li").click(function(){

               var novoPasso = parseInt($("span", $(this)).html()) - 1;

               moveForm(novoPasso);

           });

 

Teria que existir uma condição para verificar o li atual e acima dele não deixar clicavel, somente abaixo dele. Eu cheguei a pesquisar algo sobre less than e great than, mas não consegui implementar.

 

Abraços,

Léo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Considerando o seguinte HTML

<ul id="ul-nav">
 <li passo="1">Primeiro Passo</li>
 <li passo="2">Segundo Passo</li>
 <li passo="3">Terceiro Passo</li>
</ul>

 

Então

 

var passoAtual = 1;

$("#ul-nav li:lt(" + passoAtual + ")").bind('click', function() {
 // ...
 passoAtual = $(this).attr('passo');
});

 

Lembrando que o código HTML fornecido é perfeitamente válido a partir do HTML5, mas funciona mesmo em DTD 4.01.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Digamos que o nome das classes antigas ficassem <li class="click">

 

 

No JS pra incluir uma função de click, ficaria assim:

 

$(".ul-nav li.click").click(function(){

              //...

              });

 

certo??

 

Abraços,

Léo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu consegui fazer de uma outra forma, nas li's antigas o JS joga um 'class=click', ai ficou dessa forma:

 

$("#ul-nav li").click(function(){

        		if($(this).hasClass("click")){ 			

      			moveForm(passo-1);

               }});

 

Ai assim funcionou, qdo a classe for a click, ele faz esse moveForm.

 

A função que joga a class=click nos que ja passaram, foi essa:

 

 $("#ul-nav li:gt("+novoPasso+")").addClass("inactive")
$("#ul-nav li:lt("+novoPasso+")").addClass("click")

 

Abraços,

Léo

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.