2012-10-06 20 views
6

Duplicar posible:
event.preventDefault() vs. return falseJavascript equivalente nativo para jQuery event.preventDefault

No estoy seguro, pero por lo que veo, event.preventDefault proviene de jQuery. En caso afirmativo, me pregunto si existe algún equivalente nativo en Javascript que haga lo mismo.

+2

preventDefault es un método DOM. Consulte la especificación W3C [aquí] (http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-flow-cancelation). – PHeiberg

+1

No creo que esta pregunta sea la misma. – Barmar

+0

@Barmar, el tema es el mismo y la respuesta es adecuada en ambos contextos, entonces, ¿qué valor tiene tener ambos? –

Respuesta

10

preventDefault es un método DOM. Consulte la especificación W3C here.

+0

¡Gracias hombre por la ayuda! :) – Mahdi

1

jQuery envuelve el objeto de evento JavaScript nativo. preventDefault es el método de JavaScript. puede obtener preventDefault en jQuery al return false;.

+0

Sí, creo que es verdad. pero ¿qué pasa con cualquier equivalente nativo en Javascript, cuando no tenemos 'jQuery'? – Mahdi

+0

@Mahdi preventDefault está relacionado con JavaScript no jQuery. – Anoop

+2

si devuelve falso de un controlador de eventos jQuery es equivalente a invocar preventDefault ** y ** stopPropagation. no es lo mismo que llamar a preventDEfault _only_ –

0

return false de dentro de un controlador de eventos de jQuery es efectivamente lo mismo que llamar tanto e.preventDefault y e.stopPropagation en el pasado jQuery.Event object.

e.preventDefault() impedirá que el evento predeterminado del occuring, e.stopPropagation() evitará el caso de burbujeo y return false hará las dos cosas Tenga en cuenta que este comportamiento difiere de normal (no jQuery) controladores de eventos, en el cual, notablemente, return falsedoes not stop the event from bubbling up.

Fuente: https://stackoverflow.com/a/1357151

Cuestiones relacionadas