我有以下代码:
$("div.button").click(
function(e){
e.preventDefault();
$(this).find("div.th-overlay-dropdown").show();
var vals = new Object();
var current = $(this);
$(this).find("ul").append("<li><a href='#' class='dropdown-filter-link'>All</a></li>");
$("table tbody td." + $(this).find("ul").attr("class") + ":visible").each(function(i){
var t = trim($(this).text());
if(t != 'All' && t != '') {
vals[t] = t;
}
});
var sortedVals = new Array();
for(var item in vals) {
sortedVals.push(trim(item));
}
sortedVals = sortedVals.sort();
for(var item in sortedVals) {
var i = sortedVals[item];
if(typeof(i) == 'string') {
$(current).find("ul").append("<li><a href='#' class='dropdown-filter-link'>" + sortedVals[item] + "</a></li>");
}
}
},
function (e) {
e.preventDefault();
$(this).find("div.th-overlay-dropdown").hide();
$(this).find("ul").empty();
}
);
当我点击div.button时元素会显示下拉列表,但是当我再次单击div.button时,我希望下拉列表消失 - 我做错了什么?
答案 0 :(得分:1)
答案 1 :(得分:1)
我会尝试使用toggle
函数:
$(this).find("div.th-overlay-dropdown").toggle();