Сам сделал так:
$(document).ready(function () {
function hideallDropdowns() {
$(".dropped .hiddenBlock").hide();
$(".dropped").removeClass('dropped');
$(".dropped .hiddenBlock .title").unbind("click");
}
function showDropdown(e) {
var elm = $(e).parent().addClass('dropped');
elm
.find('.title')
.click(function () {
hideallDropdowns();
})
.html($(e).html());
elm.find('.hiddenBlock').show();
}
$(".nameBlock").click(function(){
showDropdown(this);
});
$(document).mouseup(function () {
hideallDropdowns();
});
$(".hiddenBlock").mouseup(function() {
return false
});
});
Подсказали сделать так:
$(document).ready(function () {
function hideallDropdowns() {
$(".dropped .hiddenBlock").hide();
$(".dropped").removeClass('dropped');
$(".dropped .hiddenBlock .title").unbind("click");
}
function showDropdown(e) {
var elm = $(e).parent().addClass('dropped');
elm
.find('.title')
.click(function () {
hideallDropdowns();
})
.html($(e).html());
elm.find('.hiddenBlock').show();
}
$(".nameBlock").click(function(){
showDropdown(this);
});
$(document).mouseup(function (event) {
if ($(event.target).parents(".headers").size()) return;
hideallDropdowns();
});
});
Как правильней?