什么类型的DOM元素?

时间:2011-05-24 17:52:49

标签: jquery html dom

e.g. if i have this:
<div id='mydiv'>whatever</div>

然后在jQuery中说,我怎么能发现id为“mydiv”的dom元素是DIV或者是其他元素类型。

e.g. 
$('#mydiv').????  ?

6 个答案:

答案 0 :(得分:52)

var type = $('#mydiv')[0].tagName

alert(type);
//displays "DIV"

答案 1 :(得分:47)

尝试is测试给定集合中的任何内容是否与另一个选择器匹配:

if( $('#mydiv').is('div') ){
  // it's a div
}

你也可以这样得到标签:

$('#mydiv').get(0).tagName // yields: 'DIV'

答案 2 :(得分:5)

alert($('#mydiv')[0].nodeName);

答案 3 :(得分:3)

.prop()函数是一种很好的方法。

// Very jQuery
$('#mydiv').prop('tagName');

// Less jQuery
$('#mydiv')[0].tagName;

两者都给出相同的结果。

而且,正如Aram Kocharyan评论的那样,您可能希望用.toLowerCase()标准化它。

答案 4 :(得分:1)

$('#mydiv').get(0).nodeType如果你知道只有一个元素。选择器对象可以包含一个对象数组。

.get()返回DOM对象数组,参数索引。 nodeType是DOM公开的属性,它告诉您DOM节点的类型是什么。通常作为所有大写字母IIRC中的字符串。

CORRECTION nodeType为您提供与nodeType相对应的INT。 tagName就是你想要的。

答案 5 :(得分:1)

var domElement = $('#mydiv').get(0);
alert(domElement .tagName);

可能有用。