How to get the name of an element with Javascript?
I'm trying to get the name of an element in Javascript. Meaning if the element is <div />
, then "div"
would be returned. If it's <img src="" />
then "img"
would be returned. I'm using jquery to selec开发者_JS百科t a bunch of elements and then calling a custom function on all of them. Within that function I want to know what I'm dealing with. How do I do this?
Seems like a simple thing. And I think I've done it before but I just can't find it. Google results keep giving me "get element by name" no matter how I phrase it.
Use nodeName (see this note about tagName):
"My advice is not to use tagName at all. nodeName contains all functionalities of tagName, plus a few more. Therefore nodeName is always the better choice."
tagName or nodeName
$(selector).each(function() {
switch (this.tagName) {
// Handle cases
}
});
You want element.nodeName
Or, within jQuery:
$(".includeMe").each(function(){
alert(this.nodeName);
});
<img class="includeMe" src="puppies.jpg" />
<div class="includeMe">Hello World</div>
<p class="includeMe">Don't forget me as well</p>
For element.tagName
and element.nodeName
return the name of your tag, in uppercase.
If you want it in lowercase, just use element.tagName.toLowerCase()
or element.nodeName.toLowerCase()
.
精彩评论