Qui avrò uno scenario per coppie. Please help mejQuery: evento Bubbling e in che modo "click", "live.click", "stopPropagation" e "return false" funzionano insieme
Ecco il caso base: http://jsfiddle.net/2zsLy/9/
Quando clicco Click Me
, sia avviso scatola e Another Paragraph
uscire. Questo è previsto dal momento in cui l'evento click si presenta fino al contenitore principale, ovvero body
. Ora iniziano le mie domande
1) http://jsfiddle.net/2zsLy/10/
Come mai l'aggiunta return false
alla mia live.click
non si ferma l'evento click da bolla. Dall'esempio, il live.click si apre e attiva la casella di avviso. Pensavo che la documentazione dicesse che return false fermerebbe l'evento dal vivo dalla bolla.
2) http://jsfiddle.net/2zsLy/11/
Ora, posso cambiare l'evento click in body
-live.click
e risolve il problema -> l'evento click non si bolla (da qui viene mostrato alcuna finestra di avviso). Perché lo live.click
funziona e lo click
no.
3) http://jsfiddle.net/2zsLy/13/
penso che la documentazione ha detto chiaramente che la chiamata event.stopPropagation()
non fermerà la zampillante si verifichi, così ho appena fatto. Io uso event.stopPropagation()
aspettandomi che possa ancora attivare la mia casella di avviso, ma non è così. Perché?
NOTA: per la risposta delle prime due domande, vedere le risposte justkt
. Per la risposta all'ultima domanda, vedere Squeegy
risposta e la sua risposta.
Non penso che tu risponda alla mia domanda. U solo cito la documentazione solo nessuno che non conosco. Per ogni scenerio, includo jsfiddle per dimostrare la mia domanda. Si prega di fare riferimento a loro. –
@Harry - Ho modificato la mia risposta per indirizzare ogni esempio di jsfiddle. – justkt
Grazie mille. La tua risposta su '1' e' 2' mi dà un grande aiuto. Tuttavia, per '3', per non dire che hai torto, ma qui c'è la citazione dal sito di jQuery' Per fermare ulteriori gestori dall'esecuzione dopo un limite usando .live(), il gestore deve restituire false. Chiamare .stopPropagation() non compirà questo. Da sopra, 'Squeegy' fa una risposta e alcuni commenti su' 3', sei d'accordo con la sua risposta per '3', justkt? –