我试图检查一个元素是否有空属性,但似乎无法让事情发挥作用。
这是我的HTML代码:
<div class="item">
<div class="itemBtn" style="visibility:hidden;">
</div>
<div class="itemText" itemtype="loader">
</div>
</div>
<div class="item">
<div class="itemBtn">
</div>
<div class="itemText" itemtype="">
</div>
</div>
这是一个jquery悬停功能,它基本上只是打开按钮。我试图通过说“如果没有项目类型,不打开它&#39;
来建立它 inner.find(".item").hover(function () {
if (inner.find(".item-text[itemtype='']")) {
$(this).children(".itemBtn").css("visibility", "hidden");
} else {
$(this).children(".itemBtn").css("visibility", "visible");
}
}, function () {
$(this).children(".itemBtn").css("visibility", "hidden");
});
更新: 我最后通过以下方式解决了这个问题:
inner.find(".item").hover(function () {
if ($(this).find("div[itemtype='']").length) {
$(this).children(".itemBtn").css("visibility", "hidden");
} else {
$(this).children(".itemBtn").css("visibility", "visible");
}
}, function () {
$(this).children(".itemBtn").css("visibility", "hidden");
});
答案 0 :(得分:2)
这只是一个简单的例子
var attr = $(this).attr('title');
if (typeof attr !== typeof undefined && attr !== false) {
//do some thing
}
答案 1 :(得分:1)
像这样使用.attr
条件:
var attr = $(this).attr('title');
if (!attr) {
// Do something
}
或者您可以通过检查条件中的属性来使其更简洁:
if (!$(this).attr('title')) {
// Do something
}
答案 2 :(得分:0)
if (! $('.item-text').attr('itemtype') ) {
alert("Nothing in itemtype");
} else {
alert("Not empty");
}
答案 3 :(得分:0)
非常简单,只需使用attr()检查属性是否存在,如下所示:
if (!$(this).attr('title')) {
alert('Exists!');
}