mi legano a un collegamento (utilizzando la funzione .live()
di jQuery) click
evento e quindi aggiungere manualmente un gestore di onclick
evento con JS puri e HTML (come <a href="".... onclick="some action">
). Voglio impedire il bubbling dell'evento al metodo live
ma non so come.stopPropagation senza jQuery
Forse e.stopPropagation()
è utile in questa situazione, ma il gestore di eventi aggiunti con onclick
è scritto in JS puri e non posso chiamare stopPropagation()
da fuori elemento involucro jQuery. return false
in questa situazione non funziona. Ho provato a sostituire return false
con $.Event('click').stopPropagation()
ma penso che questo sia sbagliato in quanto non ha funzionato.
Come evitare il pasticcio sul metodo live()
senza wrapper jQuery?
'return false' dovrebbe fare il trucco. Dovrebbe funzionare se lo fai: ''. Btw. 'event.stopPropagation()' non è un metodo jQuery. Il problema è che IE usa un diverso event mode che non offre questo metodo, quindi 'return'ing' false' è la soluzione migliore in questo caso. La domanda è, perché usi i gestori di eventi in linea? –
return false not cancel event che esegue il binding di .live – abonec
return false in una funzione jQuery non è la stessa cosa al di fuori di esso: http://stackoverflow.com/questions/1357118/javascript-event-preventdefault-vs-return-false – Mrchief