Как точно работает тег jQuery $(this)
? Я знаю, как его использовать, но как jQuery знает, какой элемент является «активным»? И каков оригинальный тег Javascript для получения текущего элемента, или это только jQuery?
7
A
ответ
7
this
простой Javascript (DOM) объекта, $(this)
превратит объект в объект JQuery.
Jquery не нужно «знать», что this
есть, она не относится к этим особым образом, не что иное, myHeaderDiv
в
var myHeaderDiv = document.getElementById('header');
$myHeaderDiv = $(myheaderDiv); //just a variable transformed into jQuery object, as with this.
1
Может быть, вы должны прочитать о размахе в JavaScript http://www.digital-web.com/articles/scope_in_javascript/
4
this
является контекстно-зависимой в JQuery (и JavaScript в целом). Он обычно представляет текущий элемент DOM в обработчике событий, но не является объектом jQuery.
$(this)
- объект jQuery, содержащий текущий элемент DOM.
3
Выражение $(this)
- это обычный вызов функции Javascript, эквивалентный jQuery(this)
. Значение this
определяется самим Javascript и не является изобретением jQuery.
@qor Вы связались с текущим вопросом, поэтому да –
Приятно видеть, что SO защищает закрытие вопроса из-за того, что он является дубликатом, хотя некоторые сайты не будут;) – Konerak
Возможный дубликат [Почему я должен использовать $ (this)] (http://stackoverflow.com/questions/3316113/why-do-i-have-to-use-this) – jAndy