jquery - 通过 jQuery 隐藏模糊的 div

标签 jquery toggle blur

我试图使用一个 div 来创建多选下拉列表的错觉,该 div 通过按空下拉列表进行切换。它工作正常,但我希望能够在单击 div 外部时隐藏它。我该怎么做呢?我使用以下代码:

<script src="../js/jqGlobal.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">
    $(document).ready(function () {
        $(".testColor").click(function () {
            $("#exampleDiv").toggle();
        });
        $("#exampleDiv").blur(function () {
            $("#exampleDiv").toggle();
        });
    });
</script>

<style type="text/css">
    #exampleDiv 
    {
        position: absolute;
        top:22px;
        left: 0px;
        width:198px;
        height:150px;
        overflow-y: scroll;
        overflow-x: hidden;
        border: 1px solid #7F9DB9;
        display: none;
    }

</style>

    <div style="position:relative;">
        <asp:DropDownList ID="DropDownList1" runat="server" Width="200" class="testColor">

        </asp:DropDownList>
        <div id="exampleDiv">
            <asp:CheckBox ID="CheckBox2" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox3" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox4" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox5" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox6" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox7" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox8" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox9" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox10" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox11" runat="server" />
            <br />
            <asp:CheckBox ID="CheckBox12" runat="server" />
            <br />
        </div>
    </div>

最佳答案

var element = $("#exampleDiv");    

$(document).bind('mouseup', function (e){
     if (element.has(e.target).length === 0)
         $(element).hide();
});

$(element).click(function(){
    $(element).show();
})

关于jquery - 通过 jQuery 隐藏模糊的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11084606/

相关文章:

javascript - jQuery 读取值并进行计算

javascript - 切换 DIV 标记内的 Bootstrap 列属性

javascript - 如何使用 jquery 切换特定的 div

PHP/GD : Better Gaussian blur

javascript - 如何知道JQuery是否加载完成

javascript - 为处理程序或匿名函数指定命名函数的区别?

Javascript 隐藏和显示表单不起作用

php - PHP foreach 语句上的 jQuery 切换

javascript - 如何在没有像素模糊的情况下调整 html5 Canvas 大小

react-native - 在 React Native 的默认模式中模糊