Visualizzazione dei risultati da 1 a 10 su 10

Hybrid View

  1. #1
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Quote Originariamente inviata da m4rko80 Visualizza il messaggio
    Se ho capito quel che vuoi fare questo dovrebbe funzionare
    codice:
    jQuery('li').addClass('klass'); //assegnazione classe
    
    jQuery('li.klass').one('click',function(){
             
             //....faccio qualcosa la prima volta
    
    
             var LI = jQuery(this);
             LI.removeClass('klass'); //Rimuovo la classe
    
    
             LI.on('click',function(){
                 //Farò questo per i successivi click
             });
    
    
    });
    Ovviamente se devi aggiungere diverse classi o meno lo saprai tu.
    a parte che la funzione è ON non ONE...

    ma invece di ri bindare gli eventi è sufficiente l'utilizzo di una variabile globale settata a false...e poi a true dopo il primo click
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Quote Originariamente inviata da ciro78 Visualizza il messaggio
    a parte che la funzione è ON non ONE...
    La funzione ONE esiste http://api.jquery.com/one/ e binda un'azione una volta sola. Dato che vuole eseguire un'azione una sola volta, per evitare di bindare piu' volte lo stesso LI (non so che altro ci sia dietro al codice) , ho proposto la soluzione.
    Di fatto all'interno del ONE() solo al primo click elimina la classe e binda 1 volta sola lo stesso LI per tutti i successivi CLICK.
    ON() l'ho messa appunto all'interno per lasciare bindati i LI in seguito.

  3. #3
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Quote Originariamente inviata da m4rko80 Visualizza il messaggio
    La funzione ONE esiste http://api.jquery.com/one/ e binda un'azione una volta sola. Dato che vuole eseguire un'azione una sola volta, per evitare di bindare piu' volte lo stesso LI (non so che altro ci sia dietro al codice) , ho proposto la soluzione.
    Di fatto all'interno del ONE() solo al primo click elimina la classe e binda 1 volta sola lo stesso LI per tutti i successivi CLICK.
    ON() l'ho messa appunto all'interno per lasciare bindati i LI in seguito.
    ops non la conoscevo. ad ogni modo trovo la logica sbagliata come accennato prima
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


Tag per questa discussione

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.