Javascript jQuery.focusout()也是在Firefox 33.1中出现.keyup()时出现的

Javascript jQuery.focusout()也是在Firefox 33.1中出现.keyup()时出现的,javascript,jquery,Javascript,Jquery,当我在输入表单html字段中释放一个键时,我在jQuery的Firefox33.1中得到一个keyup事件和一个不需要的focusout事件。我只想在释放密钥时使用keyup事件 这是我的代码: <html> <head> <script src="libraries/jquery/jquery-1.11.1.min.js"></script> </head> <body>

当我在输入表单html字段中释放一个键时,我在jQuery的Firefox33.1中得到一个keyup事件和一个不需要的focusout事件。我只想在释放密钥时使用keyup事件

这是我的代码:

<html>
    <head>
        <script src="libraries/jquery/jquery-1.11.1.min.js"></script>
    </head>
    <body>
        <form id="contact_form">
            <input class="contact_save" type="text" value="" />
        </form>
    </body>
    <script>
        $(document).ready(function($){
            $('#contact_form .contact_save').focusout(function() {
                alert("focusout!");
            });
            $('#contact_form .contact_save').keyup(function() {
                alert("keyup!");
            });
        });
    </script>
</html>

$(文档).ready(函数($){
$('#contact_form.contact_save').focusout(函数(){
警惕(“聚焦输出!”);
});
$('#contact_form.contact_save').keyup(函数(){
警报(“键控!”);
});
});
我做错了什么

谢谢


Michael

这是因为警报导致调用focusout。将结果放入示例的另一个元素中不会导致触发:

$('#contact_form.contact_save').focusout(函数(){
警惕(“聚焦输出!”);
});
$('#contact_form.contact_save').keyup(函数(){
$('#result').val('keyup');
});

尝试使用:

$('#contact_form .contact_save').blur(function() {
    alert("focusout!");
});

这是因为你因为警报而取消了焦点吗?你因为警报而失去了焦点,打开控制台,你可以看到没有焦点keyup@dav_i对看看你自己的答案。