我正在创建一个附加在文档上的幻灯片。我隐藏了身体并将幻灯片放在身体元素之外。我不想在退出按钮上关闭幻灯片。
页面结构如下:
<html style="height: 100%;">
<body style="display: none;"></body>
<div class="slideshow"></div>
</html>
我尝试过这样的事情:
$(document).on('keyup', '.slideshow', function( e ){
alert("Here");
if (e.keyCode == 27) {
alert("Escape");
};
});
如果我将keyup
更改为click
,则它可以显示警告Here
,但它不会委派密钥。忽略esc警报,如果我在它也没有显示之前添加警报,那么问题不在转义键代码中。
答案 0 :(得分:1)
据我所知,你不能这样做。这是因为document
无法确定keyup
事件是否从slideshow
触发,除非幻灯片显示包含任何输入字段并且您输入内容。
答案 1 :(得分:0)
您可以使用'input'标签替换div,它会为您提供一个输入框,因此当您输入内容时,将触发警报。
<body style="display: block;">
<input class="slideshow"/>
</body>
$(document).ready(function () {
$('.slideshow').keyup(function (e) {
alert("Here");
if (e.keyCode == 27) {
alert("Escape");
};
});
});