我想获取元素的子标记名称.
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>
Run Code Online (Sandbox Code Playgroud)
jQuery:
$(".element").bind("click", function(){
var child = $(this).add("first-child").prop("tagName");
$("#debugger").html(child);
});?
Run Code Online (Sandbox Code Playgroud)
我不明白为什么我总是得到DIV作为结果......
谢谢.
the*_*dox 10
$(this).children()[0].tagName
Run Code Online (Sandbox Code Playgroud)
要么
$(this).children().first().prop('tagName');
Run Code Online (Sandbox Code Playgroud)
.add()用于向jQuery对象数组添加新元素,但是您尝试获取现有元素的标记名称.所以,你需要一些getter方法.
使用JavaScript
this.firstChild.tagName
Run Code Online (Sandbox Code Playgroud)
要么
this.childNodes[0].tagName
Run Code Online (Sandbox Code Playgroud)
完整代码
$(".element").bind("click", function(){
var child = $(this).children().first().prop('tagName');
$("#debugger").html(child);
});
Run Code Online (Sandbox Code Playgroud)