Ответ 1
var type = $('#mydiv')[0].tagName
alert(type);
//displays "DIV"
e.g. if i have this:
<div id='mydiv'>whatever</div>
то скажем в jQuery, как я могу узнать, что элемент dom с id "mydiv" является DIV или является некоторым другим типом элемента.
e.g.
$('#mydiv').???? ?
var type = $('#mydiv')[0].tagName
alert(type);
//displays "DIV"
Попробуйте is
, который проверяет, соответствует ли что-либо в данном наборе другой селектор:
if( $('#mydiv').is('div') ){
// it a div
}
Вы также можете получить тег таким образом:
$('#mydiv').get(0).tagName // yields: 'DIV'
alert($('#mydiv')[0].nodeName);
Функция . prop() - хороший способ сделать это.
// Very jQuery
$('#mydiv').prop('tagName');
// Less jQuery
$('#mydiv')[0].tagName;
Оба дают тот же результат.
И, как прокомментировал Арам Кочарян, вы, вероятно, захотите стандартизировать его с помощью .toLowerCase()
.
$('#mydiv').get(0).nodeType
, если вы знаете только один элемент. Объект селектора может содержать массив объектов.
.get()
возвращает массив объектов DOM, индексы параметров. nodeType
- это свойство, открытое DOM, которое сообщает вам, что такое тип DOM node. Обычно как строка во всех кепках IIRC.
КОРРЕКЦИЯ nodeType
дает вам INT, соответствующий типу nodeType. tagName
- это то, что вы хотите.
var domElement = $('#mydiv').get(0);
alert(domElement .tagName);
может быть полезным.