我有以下jQuery代码:
var agencyToolbar = $('#agency-header-toolbar');
if ($(":not(:empty)", agencyToolbar)) {
agencyToolbar.show();
}
上面的代码有效,但我不确定它是否是使用jQuery选择器的正确方法。
答案 0 :(得分:1)
假设您要选择非空的#agency-header-toolbar
。使用
var agencyToolbar = $("#agency-header-toolbar:not(:empty)");
agencyToolbar.show();
答案 1 :(得分:1)
您的代码将始终触发show
,因为$(":not(:empty)", agencyToolbar)
创建一个永远不会null
的jQuery对象,因此始终是" truthy"。
您想使用is
(返回布尔结果),如
if (agencyToolbar.is(':not(:empty))')){
或使用单个选择器,如
$("#agency-header-toolbar:not(:empty)").show();
如果你需要它更快一点,首先将id选择器作为自己的操作,然后用not()
$("#agency-header-toolbar").not(":empty").show();