如果列表清空,我需要隐藏H1标题。
基本上我在说。从选择下拉列表中选择;如果显示所选值,则隐藏所有其他值。现在我还需要说明列表类别[h1]标题是否为空隐藏,否则显示h1标题。
http://jsfiddle.net/ajandthensome42/8Ye87/4/
如果有人能提供帮助,我将非常感激。
$(document).ready(function(){
$("#selectForm").change(function(event) {
$(".all").hide();
$("." + this.value).fadeIn("slow");
$(".multi").fadeIn("slow");
var size = $(".language-list li").size();
if(size === 0){
$(".language-list h1").hide();
}
else {
$(".language-list h1").show();
}
});
});
答案 0 :(得分:3)
根据相邻列表是否包含任何可见元素,遍历所有h1标记并显示/隐藏。试试这个:
$( ".language-list h1" ).each(function() {
if ($(this).next('ul').find('li:visible').length === 0) {
$(this).hide();
} else {
$(this).show();
}
});
要将其置于上下文中,这是完整的更改处理程序:
$(document).ready(function() {
$("#selectForm").change(function(event) {
$(".all").hide();
$("." + this.value).fadeIn("slow");
$(".multi").fadeIn("slow");
$( ".language-list h1" ).each(function() {
if ($(this).next('ul').find('li:visible').length === 0) {
$(this).hide();
} else {
$(this).show();
}
});
});
});
答案 1 :(得分:0)
使用以下简单代码检查列表项的数量:
var size = $(".language-list li").size();
if(size === 0)
{
...
}