Câu trả lời:
Bạn có thể gọi .prop("tagName"). Ví dụ:
jQuery("<a>").prop("tagName"); //==> "A"
jQuery("<h1>").prop("tagName"); //==> "H1"
jQuery("<coolTagName999>").prop("tagName"); //==> "COOLTAGNAME999"
Nếu viết ra .prop("tagName")là tẻ nhạt, bạn có thể tạo một chức năng tùy chỉnh như vậy:
jQuery.fn.tagName = function() {
return this.prop("tagName");
};
Ví dụ:
jQuery("<a>").tagName(); //==> "A"
jQuery("<h1>").tagName(); //==> "H1"
jQuery("<coolTagName999>").tagName(); //==> "COOLTAGNAME999"
Lưu ý rằng tên thẻ, theo quy ước, được trả lại VỐN . Nếu bạn muốn tên thẻ được trả về là tất cả chữ thường, bạn có thể chỉnh sửa chức năng tùy chỉnh như vậy:
jQuery.fn.tagNameLowerCase = function() {
return this.prop("tagName").toLowerCase();
};
Ví dụ:
jQuery("<a>").tagNameLowerCase(); //==> "a"
jQuery("<h1>").tagNameLowerCase(); //==> "h1"
jQuery("<coolTagName999>").tagNameLowerCase(); //==> "cooltagname999"
.prop.
toLowerCase()hoặc toUpperCase()có thể hữu ích khi so sánh prop('tagName')kết quả với tên thẻ. if($("my_selector").prop("tagName").toLowerCase() == 'div')hoặcif($("my_selector").prop("tagName").toUpperCase() == 'DIV')
Bạn có thể sử dụng của DOM nodeNamebất động sản :
$(...)[0].nodeName
$(this).prop('tagname'). this .nodeName thường hiệu quả hơn. +1
jQuery 1.6+
jQuery('selector').prop("tagName").toLowerCase()
Các phiên bản cũ hơn
jQuery('selector').attr("tagName").toLowerCase()
toLowerCase () không bắt buộc.
new Stringvậy
Bạn KHÔNG nên sử dụng jQuery('selector').attr("tagName").toLowerCase(), vì nó chỉ hoạt động trong các phiên bản cũ hơn của Jquery.
Bạn có thể sử dụng $('selector').prop("tagName").toLowerCase()nếu bạn chắc chắn rằng bạn đang sử dụng phiên bản jQuery thats> = phiên bản 1.6.
Bạn có thể nghĩ rằng MỌI NGƯỜI đang sử dụng jQuery 1.10+ hoặc một cái gì đó vào lúc này (tháng 1 năm 2016), nhưng thật không may, điều đó thực sự không đúng. Ví dụ, nhiều người ngày nay vẫn đang sử dụng Drupal 7 và mọi bản phát hành chính thức của Drupal 7 cho đến ngày nay đều bao gồm jQuery 1.4.4 theo mặc định.
Vì vậy, nếu không biết chắc chắn dự án của bạn sẽ sử dụng jQuery 1.6+ hay không, hãy xem xét sử dụng một trong các tùy chọn hoạt động cho TẤT CẢ các phiên bản jQuery:
Lựa chọn 1 :
jQuery('selector')[0].tagName.toLowerCase()
Lựa chọn 2
jQuery('selector')[0].nodeName.toLowerCase()