Jquery esc hide方法不隐藏元素
我正在制作一个灯箱图库,但此代码没有隐藏灯箱Jquery esc hide方法不隐藏元素,jquery,dom,hide,Jquery,Dom,Hide,我正在制作一个灯箱图库,但此代码没有隐藏灯箱div,当我按下esc键时,它应该被隐藏 我的DOM元素如下所示: <div id="lightbox"> <div id="overlay"> <div id="imageholder"> <img name="lightboximage" src="images/demo/940x340.gif" height="600" width="700" align=
div
,当我按下esc键时,它应该被隐藏
我的DOM元素如下所示:
<div id="lightbox">
<div id="overlay">
<div id="imageholder">
<img name="lightboximage" src="images/demo/940x340.gif" height="600" width="700" align="left" />
<div id="description">
<h1><a href="url/cyberkiller.nishchal">Nishchal Gautam</a></h1>
<p>Description about the image</p>
</div>
</div>
</div>
</div>
关于图像的描述
我已将脚本放在这些元素下面,是否遗漏了一些内容?请尝试使用keypress事件而不是keypup
$(document).on('keypress' , function(e) {
var code = (e.keyCode ? e.keyCode : e.which);
if(code ==27){
$("#lightbox").hide();
}
});
它在我的firefox中运行良好,当我按ESC键时,它会隐藏。 你在使用firefox吗?也许它在其他浏览器中不起作用。 为了兼容性,您最好将其更改为:
$(document).keyup(function(e) {
var key = e.keyCode || e.which || e.charCode;
if(key==27)
$("#lightbox").hide();
}):
您应该简单地使用e.which,因为并非所有浏览器都支持keycode
$(document).keyup(function(e) {
if(e.which==27)
{
$("#lightbox").hide();
}
});
某些键,如enter键、tab键、箭头键、Esc键等。。。需要使用keypress事件捕获,以便更好地使用keypress事件
$(document).keypress(function(e){
var key = (e.keyCode ? e.keyCode : e.which);
if(key ==27){
$("#lightbox").hide();
}
});
控制台中是否有任何错误?好像您的HTML格式不正确。。额外结案分组。。这是一个打字错误吗?不,我没有在那里出错,可能是任何轻微的疏忽?html没有什么问题,它只是在这里工作
$(document).keypress(function(e){
var key = (e.keyCode ? e.keyCode : e.which);
if(key ==27){
$("#lightbox").hide();
}
});