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

    [jQuery] link che viene ciclato

    Ciao a tutti, ho un problema su una serie di link vi posto il code:

    codice:
    <div class="smenu">
       <a href="#" class="deactive" data-link="link1">Link 1</a>
       <a href="#" class="deactive" data-link="link2">Link 2</a>
       <a href="#" class="deactive" data-link="link3">Link 3</a>
    </div>
    
    <script src="https://code.jquery.com/jquery-3.3.1.js"></script>
    
    <script>
    $(document).ready(function(){
    $(".smenu>a").on("click", function(e){
       e.preventDefault();
       e.stopPropagation();
       alert("1");
    )};
    
    });
    </script>
    
    il problema è che in questo modo quando clicco su un link "alert" viene visualizzato per tutti i link cioè in questo caso 3 volte, qual'è il motivo?

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Ciao, prova a sostituire 'smenu > a' con 'smenu a' e quindi tutti i tag A contenuti in .smenu.
    stopPropagation() a meno che non sei all'interno di altro che intercetta un click non dovrebbe servire.

  3. #3
    Cosa dovrebbe cambiare senza ">"?
    Ultima modifica di techno; 16-01-2019 a 01:45

  4. #4
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Puoi vedere qui le differenze, https://www.w3schools.com/cssref/css_selectors.asp basta provare e magari banalemente è quello.

  5. #5
    Bene ho tolto il maggiore ">" ma come si voleva dimostrare non è cambiato nulla continua a rompermi le scatole con stola fastidioso problema

  6. #6
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    Questo funziona correttamente
    codice:
    <html>
    <head>
    <script src="https://code.jquery.com/jquery-3.3.1.js"></script>
    </head>
    <body>
    <div class="smenu">
       <a href="#" class="deactive" data-link="link1">Link 1</a>
       <a href="#" class="deactive" data-link="link2">Link 2</a>
       <a href="#" class="deactive" data-link="link3">Link 3</a>
    </div>
    
    
    
    
    
    
    <script>
    
    
    $(document).ready(function(){
    
    
    $(".smenu a").on("click", function(e){
       e.preventDefault();
       e.stopPropagation();
       alert($(this).data('link'))
    })
    
    
    });
    
    
    
    
    
    
    </script>
    </body>
    </html>

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 © 2024 vBulletin Solutions, Inc. All rights reserved.