2010-07-29 8 views
7

¿Cómo funciona la etiqueta jQuery $(this) exactamente? Sé cómo usarlo, pero ¿cómo sabe jQuery qué elemento está 'activo'? ¿Y cuál es la etiqueta original de Javascript para obtener el elemento actual, o solo jQuery?

+7

@qor Has vinculado a la pregunta actual, entonces sí –

+0

Es bueno ver que SO protege el cierre de una pregunta porque es un duplicado de sí mismo, algunos sitios no lo harían;) – Konerak

+0

posible duplicado de [¿Por qué tengo que usar? $ (esto)] (http://stackoverflow.com/questions/3316113/why-do-i-have-to-use-this) – jAndy

Respuesta

7

El this es un objeto de JavaScript sencillo (DOM), $(this) se gire el objeto en un objeto jQuery.

jQuery no necesita 'saber' lo que this es decir, no trata esto de una manera especial, no es otro que myHeaderDiv en

var myHeaderDiv = document.getElementById('header'); 
$myHeaderDiv = $(myheaderDiv); //just a variable transformed into jQuery object, as with this. 
4

this es dependiente del contexto en jQuery (y JavaScript en general). Por lo general, representa el elemento DOM actual en un controlador de eventos, pero no es un objeto jQuery.

$(this) es un objeto jQuery que contiene el elemento DOM actual.

3

La expresión $(this) es simplemente una llamada normal a la función Javascript, equivalente a jQuery(this). El valor this está definido por el propio Javascript, y no es una invención de jQuery.

Cuestiones relacionadas