首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Div元素上的jquery blur()事件出现问题

Div元素上的jquery blur()事件出现问题
EN

Stack Overflow用户
提问于 2009-12-31 20:52:03
回答 8查看 26.6K关注 0票数 10

我有问题隐藏某些弹出式窗口是基于div。当我在外面点击那些他们没有隐藏的div的时候。下面是我正在做的示例代码..

代码语言:javascript
运行
复制
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>

    <script type="text/javascript" src="../JS/jquery-1.3.2.js"></script>
    <script type="text/javascript">
        $(document).ready(function()
        {
            $("#MainCanvas div").blur(function()
            {
                alert("blured");
            });
        });
    </script>

</head>
<body>
    <div id="MainCanvas" style="width: 400px; height: 350px; border: solid 1px black;">
       <div class="ui-widget-content" style=" vertical-align:middle; height:60px; border: solid 2px black; width:300px;">
            Drag me around
        </div>
    </div>

</body>
</html>
EN

回答 8

Stack Overflow用户

发布于 2009-12-31 20:58:28

如果我没记错,只有A、AREA、BUTTON、INPUT、LABEL、SELECT、TEXTAREA创建焦点/模糊事件。如果您想通过在弹出窗口之外单击来隐藏弹出窗口,则必须监听文档上的单击事件,并检查事件是发生在弹出窗口的内部还是外部。

示例代码:

代码语言:javascript
运行
复制
$(document).click(function(e){
    if($(e.target).is('#MainCanvas, #MainCanvas *'))return;
    $('#MainCanvas').hide();
});
票数 25
EN

Stack Overflow用户

发布于 2015-10-06 21:22:14

对于div模糊,focusout()将起作用

代码语言:javascript
运行
复制
 $('#divCustomerGroup').focusout(function () {
            alert('yo');
        });
票数 5
EN

Stack Overflow用户

发布于 2013-03-07 02:21:46

您可以在div标签上添加tabindex属性:

代码语言:javascript
运行
复制
<div class="my_div" tabindex="3"></div>

在那之后,模糊事件将会起作用:

代码语言:javascript
运行
复制
$('.my_div').blur(function(){ 
   //code ... 
});
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1985292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档