Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    Stoppare un evento in determinate occasioni.

    salve,
    ho scritto un po' di codice html/js che mi permette di creare una select non standard ma con una grafica personalizzata, so che esistono un infinità di plugin ma un po' per esercizio e un po' per controllo ho preferito farla da solo.

    Tutto va perfettamente se non quando devo usare via mobile la select. In pratica vorrei vederla graficata come piace a me ma quando ci si clicca sopra vorrei mostrare lo scorrimento delle option come da device usato in quel momneto.

    Come posso bloccare tutti gli eventi da me già creati negli script precedenti per l'uso della select?

    Cerco di spiegarmi meglio.

    Assumendo che gli eventi abbiano quest'ordine:

    codice:
    $(document).on("click",".element",function(){
    
      //faccio qualche cosa
    
    }
    
    $(document).on("click",".element",function(){
    
      //faccio una cosa completamente diversa dalla prima
    
    }
    Come annullo il primo evento?
    Di base annullando il primo evento vorrei fare un trigger sulla select reale che però è nascosta e una volta selezionata cambio anche quella finta.

    Chiaramente se esistono vie più semplici sono tutto orecchie.

    Grazie in anticipo!

  2. #2
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    592
    Quote Originariamente inviata da Madsex Visualizza il messaggio
    salve,
    ho scritto un po' di codice html/js che mi permette di creare una select non standard ma con una grafica personalizzata, so che esistono un infinità di plugin ma un po' per esercizio e un po' per controllo ho preferito farla da solo.

    Tutto va perfettamente se non quando devo usare via mobile la select. In pratica vorrei vederla graficata come piace a me ma quando ci si clicca sopra vorrei mostrare lo scorrimento delle option come da device usato in quel momneto.

    Come posso bloccare tutti gli eventi da me già creati negli script precedenti per l'uso della select?

    Cerco di spiegarmi meglio.

    Assumendo che gli eventi abbiano quest'ordine:

    codice:
    $(document).on("click",".element",function(){
    
      //faccio qualche cosa
    
    }
    
    $(document).on("click",".element",function(){
    
      //faccio una cosa completamente diversa dalla prima
    
    }
    Come annullo il primo evento?
    Di base annullando il primo evento vorrei fare un trigger sulla select reale che però è nascosta e una volta selezionata cambio anche quella finta.

    Chiaramente se esistono vie più semplici sono tutto orecchie.

    Grazie in anticipo!
    Scusa ma l'evento onclick è uno solo.....
    nella prima funzione devi fare tutto li...!
    se la duplichi è un errore di programmazione..e non so casa ti fa l'elaboratore di script..

    ciao
    Vic53

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Bhe io ho semplificato ma in realtà il primo evento fa parte di un pakketto da me creato, solo in un caso vorrei che quel click non funzionasse. Immaginalo come un plugin che ho creato io e che se installato crea le select customizzate. Senza voler toccare il core del plugin vorrei che su una determinata select customizzata il primo evento non funzionasse ma avvenisse quello che scrivo nel secondo evento. Se fosse una select normale userei stopPropagation() ma non sembra funzionare.

    Grazie in anticipo

  4. #4
    Utente di HTML.it L'avatar di vic53
    Registrato dal
    Oct 2010
    residenza
    Fonte Nuova (Roma)
    Messaggi
    592
    Quote Originariamente inviata da Madsex Visualizza il messaggio
    Bhe io ho semplificato ma in realtà il primo evento fa parte di un pakketto da me creato, solo in un caso vorrei che quel click non funzionasse. Immaginalo come un plugin che ho creato io e che se installato crea le select customizzate. Senza voler toccare il core del plugin vorrei che su una determinata select customizzata il primo evento non funzionasse ma avvenisse quello che scrivo nel secondo evento. Se fosse una select normale userei stopPropagation() ma non sembra funzionare.

    Grazie in anticipo
    All'ingresso della prima funzione, chiama una sotto funzione che verifica subito cosa non deve fare la prima funzione ed esce con false...
    quindi con una riga di codice nella prima funzione e un test nella seconda....

    tipo
    funzione primaria ()
    if (funzionesecondaria) return false;
    ....
    nella secondaria identifichi cosa deve o non deve fare la prima...e ritorni true o false come ti serve.

    ciao
    Vic53

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.