脚本无法使用chrome

时间:2012-10-24 14:44:21

标签: jquery google-chrome lightbox

function loadPopup(type) {
    if (type == "login") {
        $("#login").show();
        $("#dark").show();
        $("body").keypress(function (e) {
            var key = e.keyCode ? e.keyCode : e.which;
            if (key == "27") {
                $("#login").hide();
                $("#dark").hide();
            }
        });
    }
}

这会弹出一个id登录和黑暗的窗口。按下Esc时,将自动关闭。两种元素的风格:

#dark {
    display: none;
    position: absolute;
    top: 0 % ;
    left: 0 % ;
    width: 100 % ;
    height: 100 % ;
    background-color: #aaa;
    z-index: 1001; 
    -moz-opacity: 0.8;
    opacity: .80;
    filter: alpha(opacity = 80);

}
#login {
    display: none;
    background: white;
    color: black;
    width: 500px;
    height: 500px;
    position: absolute;
    top: 50 % ;
    left: 50 % ;
    margin-left: -250px;
    margin-top: -250px;
    z-index: 1002;
}

HTML:

<head>
<title>some title</title>
    <link rel="stylesheet" href="style/css.php?file=index" type="text/css"/>

    <script src="script/JQuery.js" type="text/javascript"></script>
    <script src="script/js.php?file=index" type="text/javascript"></script>

</head>
<body>
        <div id="dark"></div>
        <div id="login"></div>

这里有一些元素。

这适用于IE 9,Mozilla Firefox但不适用于Chrome 21.错误在哪里?

1 个答案:

答案 0 :(得分:0)

您似乎正在分配调用该函数的按键事件事件时间。尝试将其移动到函数外部..

$(function() {
   $("body").keypress(function (e) {
       var key = e.keyCode ? e.keyCode : e.which;
       if (key == "27") {
            $("#login").hide();
            $("#dark").hide();
        }
    });
});

function loadPopup(type) {
    if (type == "login") {
        $("#login").show();
        $("#dark").show();
    }
}