我正在尝试使用 jquery 显示一个下拉框。它运作良好。我还实现了在打开列表后单击页面的任何其他位置时隐藏下拉列表的选项。为此,我使用了以下 jQuery。
$('div.selectBox').each(function(){
$(this).children('span.selected').html($(this).children('div.selectOptions').children('span.selectOption:first').html());
$(this).attr('value',$(this).children('div.selectOptions').children('span.selectOption:first').attr('value'));
$(this).children('span.selected,span.selectArrow').click(function(){
if($(this).parent().children('div.selectOptions').css('display') == 'none'){
$(this).parent().children('div.selectOptions').css('display','block');
}
else
{
$(this).parent().children('div.selectOptions').css('display','none');
}
});
$(document).unbind('click');
$(document).click(function(event){
if($(event.target).closest('div.selectBox').length == 0) {
$('.selectOptions').hide();
}
});
$(this).find('span.selectOption').click(function(){
$(this).parent().css('display','none');
$(this).closest('div.selectBox').attr('value',$(this).attr('value'));
$(this).parent().siblings('span.selected').html($(this).html());
});
});
当我们点击网站的任何其他部分时,它会完美关闭或隐藏。但问题是其他一些<div>
标签正在隐藏或display:none;
在执行此操作后。
请告诉我一个解决方案。您可以在上面的 url 中看到它完全影响。如果您需要任何其他信息,请告诉我。