jquery - 获取元素的子标记名

标签 jquery

我想获取元素的子标签名称。

HTML:

<div class="element">
    <h1>title</h1>
</div>
<div class="element">
    <img src="http://2.bp.blogspot.com/-ma66w8WJsZ0/UBVcmt3XS4I/AAAAAAAAAWw/4UyVd2eR8A0/s1600/olympic-logo.thumbnail.jpg" />
</div>
<div id="debugger"></div>

​ jQuery:

$(".element").bind("click", function(){

    var child = $(this).add("first-child").prop("tagName");

    $("#debugger").html(child);

});​

我不明白为什么我总是得到 DIV 作为结果......

谢谢。

http://jsfiddle.net/8Xg3G/2/

最佳答案

$(this).children()[0].tagName

$(this).children().first().prop('tagName');

.add() 用于向 jQuery 对象数组添加新元素,但您正在尝试获取现有元素的标签名称。所以,你需要一些 getter 方法。

<小时/>

使用 JavaScript

this.firstChild.tagName

this.childNodes[0].tagName
<小时/>

完整代码

$(".element").bind("click", function(){
    var child = $(this).children().first().prop('tagName');
    $("#debugger").html(child);
});

<强> DEMO

关于jquery - 获取元素的子标记名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11987553/

相关文章:

javascript - 将选项卡更改为 Accordion - 单击时 Accordion 菜单不会折叠

javascript - JQuery JSON 解析/AJAX 问题 ('remove' 和 '__proto__' 数组中的键?)

javascript - 使用 Angular 将 <td> onclick 的值获取到同一行的另一个 <td>

javascript - jQuery - 如何检查是否在特定 DIV 中单击了任何链接?

javascript - $http加载弹出窗口的最佳实践方法

jquery - 位置固定 div 低于 float div

javascript - woocommerce 的简单 JQuery 脚本不起作用

jquery - 使用 jQuery 更改特定文本

javascript - 将时间存储在表单中以发送到 Jquery

javascript - $(selector)[0] 在 jQuery 中是什么意思?