Utilizzo le descrizioni comandi di Zurb Foundation (http://foundation.zurb.com/docs/components/tooltips.html). Mi piacerebbe personalizzare leggermente il loro comportamento. Fanno uso di un listener di eventi mouseover
sull'elemento source per creare il tooltip (alla prima chiamata) e quindi dissolverlo. Quello che sto tentando di fare è jQuery selezionare un sottoinsieme delle fonti del tooltip sulla pagina, rimuovi solo i loro ascoltatori di mouseover e associa quelli nuovi che lasceranno che il tooltip rimanga lì per un secondo prima di scomparire dopo che il mouse è stato spostato.Separazione di un listener jQuery da un sottoinsieme di elementi
Ecco la parte difficile. ZURB lega il suo ascoltatore in quanto tale:
$('body.off-canvas').on('mouseenter', '.has-tooltip', ...);
Di seguito vi rimuovere con successo questo listener, come previsto:
$('body.off-canvas').off('mouseenter', '.has-tooltip');
ma ho solo voglia di rimuovere il listener per taluni di questi elementi, in questo modo:
$('body.off-canvas').off('mouseenter', '.has-tooltip.my-custom-class');
E tur out jQuery non lo riconoscerà come "sottrattivo" del set più grande di .has-tooltip
elementi, essenzialmente dicendo "Non c'è nessun listener di eventi che corrisponde a questo selettore esatto, quindi non farò nulla". Qualcuno ha una buona soluzione? Ho trovato alcuni che funzioneranno se stai creando l'ascoltatore originale da solo, ma non è questo il caso.
si va da questa angolazione, ma forse si consideri l'uso del metodo '.filter()' o del selettore ': not()' per filtrare '.my-custom-class' prima .'on()' è applicato? –
Grazie per l'input; che funzionerebbe se stessi creando l'ascoltatore originale da solo, ma sfortunatamente fa parte di una libreria di terze parti.Suppongo di poter modificare la libreria, ma preferirei non farlo perché non sarebbe una buona pratica. – Brandon
quindi la libreria non ha la capacità di permetterti di specificarlo in una configurazione? è un peccato –