Я хочу знать тэгу объекта JQuery, я попробовал:доступа TagName из Jquery объекта
var obj = $("<div></div>");
alert($(obj).attr("tagName"));
Это предупреждение показывает мне undefined
. Что я не делаю?
Я хочу знать тэгу объекта JQuery, я попробовал:доступа TagName из Jquery объекта
var obj = $("<div></div>");
alert($(obj).attr("tagName"));
Это предупреждение показывает мне undefined
. Что я не делаю?
tagName
является свойством базового DOM элемента, не является атрибутом, так что вы можете использовать prop
, который является метод JQuery для доступа/изменения свойств:
alert($(obj).prop('tagName'));
Лучше, однако, непосредственно получить доступ к свойству DOM:
alert(obj[0].tagName);
Специальные +1 для 'prop'. – VisioN
Вы должны получить доступ к лежащей в основе DOM узла, поскольку объекты JQuery не имеют tagName
собственности, и tagName
не свойство, а не атрибут:
var obj = $("<div></div>");
alert(obj[0].tagName);
Обратите внимание, что я также удалена вызов jQuery во второй строке, так как obj
уже является объектом jQuery.
tagName
является родным свойством элемента DOM, он не является частью самого jQuery. Имея это в виду, использовать $()[0]
, чтобы получить элемент DOM из селектора JQuery, как это:
var obj = $("<div></div>");
alert(obj[0].tagName);
Не забывайте, что объекты jQuery являются коллекциями, поэтому они могут обернуть один или несколько элементов DOM, текстовые узлы и т. Д. – hippietrail