HTML:
<div id="colourlist">test 1</div>
<ul id="colours">
<li value="1">test 1</li>
<li value="2">test 2</li>
<li value="3">test 3</li>
<li value="4">test 4</li>
</ul>
<div id="preview"></div>
jQuery:
$("#colours li").on('mouseenter', function(){
$("#colours li").removeClass("hilight");
$(this).addClass("hilight");
var O = $(this).offset();
var CO = $("#colours").offset();
$("#preview").css("top", O.top-150).show();
$("#preview").css("left", CO.left+160);
}).on('click', function(){
var text = $(this).text();
$("#colourlist").text(text);
$("#colours").hide();
$("#preview").hide();
});
$("#colourlist").on('click', function(e){
e.preventDefault();
$("#colours").toggle();
});
这是jsfiddle:http: //jsfiddle.net/CJbeF/48/
在 UL 下拉列表之外单击时如何隐藏下拉列表和预览?
当下拉菜单打开并再次单击下拉菜单时,如何隐藏预览 div?