Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Aiuto su accordion con jQuery

    salve!
    ho questa pagina:
    codice:
    <div id="accordion">
            <div class="level">
                <h3>CORNER COMPAGNIA ITALIANA COIN</h3>
                <div class="expanded">
                    
    
    
                           TESTO
                    </p>   
                </div>
                <h3>SHOP IN SHOP</h3>
                <div class="expanded">
                    
    
    
                           TESTO
                    </p>
                </div>
                <h3>INTERNATIONAL SHOPS</h3>
                <div class="expanded">
                    
    
    
                            TESTO
                    </p>  
                </div>
            </div>
        </div>
    ho usato questo piccolo script per fare in modo di visualizzare i vari div sotto ai link quando clicco sui link:
    codice:
    $(function() {
        $("#accordion .expanded").hide();
        $(".opening").click(function() {
            $(this).next().slideToggle('fast', function() {
                $(this).prev("a.opening").toggleClass("active");
            });
            return false;
        });
    });
    ho provato però ad andare più in la.
    allora.
    tutti partono nascosti.
    quando clicco sul link il div si apre.
    vorrei però che gli div si chiudano.
    insomma ne deve rimanere visibile solo uno.
    ho fatto qualche tentativo senza successo.
    potete darmi una mano?

  2. #2
    ho fatto qualche altra prova e ci sono quasi arritvato.
    solo che nn riesco a risovlere definitivamente:
    codice:
    $(function() {
        $("#accordion .expanded").hide();
        $(".opening").click(function() {
            if(// SE QUALCUNO HA LA CLASSE .da_nascondere) {
                $(".da_nascondere").hide();
            }
            $(this).next().slideToggle('fast', function() {
                $(this).prev("a.opening").toggleClass("active");
                $(this).toggleClass("da_nascondere");
            });
            return false;
        });
    });
    ho pensato di aggiungere un'altra classe all'elemento attivo e quando clicco prima controllo se l'elemento da_nascondere c'è e in caso lo nascondo.
    solo che nn funziona benissimo e penso che il problema sia nella condizione dell'if.

  3. #3
    questo pare funzionare:
    codice:
    // ACCORDION
    $(function() {
        $("#accordion .expanded").hide();
        $(".opening").click(function() {
            $("*").children('.visibile').hide();
            $("*").children('.visibile').removeClass('visibile');
            $(this).next().slideToggle(1500, function() {
                $(this).prev("a.opening").toggleClass("active");
                $(this).toggleClass("visibile");
            });
            return false;
        });
    });

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.