按下转义键时如何隐藏元素?

时间:2012-11-21 09:32:44

标签: jquery

我找到了以下脚本来创建在其他页面中打开的叠加层:

<script>
    $("a#selector").live("click", function(){
        $(".overlayInner").load("logwork_form.php",
        // the following is the callback   
        function(){$(".overlayOuter").fadeIn(300); });
    });
</script>

我想请你帮我添加一些额外的功能:按esc键关闭叠加层。

我尝试添加以下代码但不起作用。

//close if esc key is pres
$(document).keyup(function(e) {
    if (e.keyCode == 27) {
        $(".overlayInner").close("logwork_form.php?proiect_id=13", function({
            $(".overlayOuter").fadeOut(300); 
});

2 个答案:

答案 0 :(得分:6)

由于“close()”未定义且缺少括号...

$(document).keyup(function(e) {
    if (e.which == 27) {
        $(".overlayInner").fadeOut(300); 
    }
});

答案 1 :(得分:0)

尝试以下代码获取密钥代码,然后为转义密钥代码

添加if块
   var keycode = (event.keyCode ? event.keyCode : event.which);

以上行适用于所有主流浏览器。