Várias instâncias do slideToggle que alternar tudo

votos
1

Eu tenho o seguinte script que aparece várias vezes na minha página. Eu tenho um simples alternância de slides anexado ao <div class=info>e contolled por <a rel=viewinfo>tag, mas quando clico no âncora, todos os divs com classe info slide.

aqui está o HTML / PHP

<div class=couplistMeta>
    <a class='view' rel=viewinfo href=#>View Coupon</a>
    <a class=print href=#>Print</a>
</div>
<div class=info>
    <p><?php echo $rec2[4].&nbsp;&nbsp;--&nbsp;&nbsp;Phone:&nbsp;&nbsp;.$rec2['phone']; ?></p><p><?php echo $rec2['address'].&nbsp;&nbsp;--&nbsp;&nbsp;.$rec2['city'].,&nbsp;.$rec2['state'].&nbsp;.$rec2['zip']; ?></p>
</div>

Aqui está o Javascript

$(document).ready(function() {
    $('div.info').hide();
    $(a[rel='viewinfo']).click(function() {
            $('div.info').slideToggle(400);
            return false;
    });
});

Eu tentei usar $(this).next('div.info').slideToggle(400);mas isso só quebrou o efeito. Então, $('div.info')é muito geral, como posso ser mais específico com o JS?

Publicado 27/08/2009 em 00:13
fonte usuário
Em outras línguas...                            


1 respostas

votos
2

Tente isto:

$(document).ready(function() {
    $('div.info').hide();
    $("a[rel='viewinfo']").click(function() {
        $(this).parent().next('.info').slideToggle(400);
        return false;
    });
});

A questão sendo devido a $('div.info')iteração implicitamente sobre todos os divelementos com a classe infona página.

Respondeu 27/08/2009 em 00:20
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more