当一个班级显示为 block 时,我希望使用Escape键删除/隐藏一个下拉菜单。
在进入页面时,有一个下拉菜单只有在单击所选内容后才被激活。该代码检查是否将下拉类设置为display:block
。如果是这样,则单击退出键会触发响应。
现在我只希望显示警报。
if ($('body').css('color') === '#353C3A') {
$('body', context).on('keyup', function(evt) {
if (evt.keyCode === 27) {
alert('This is just a test to see this message');
}
});
}
我希望一旦单击退出键,就会看到警报框,但我没有。提前谢谢
答案 0 :(得分:0)
首先要检查的是从if语句检查主体的颜色。如果您在内部具有断点或警报并且可以正常工作,则可以继续按按键。
对于按键,我建议使用$(document)代替body,您可以尝试添加一些带有class或id的div元素。
这是我在代码中使用的内容。
$(document).keypress(function(evt) {
if (evt.keyCode === 27) {
alert('This is just a test to see this message');
}
});
OR
$(document).on('keyup', function(evt) {
if (evt.keyCode === 27) {
alert('This is just a test to see this message');
}
});
答案 1 :(得分:0)
$('body').css('color')
返回rgb,因此永远不会分配事件绑定。顺便说一句,如果您的身体元素在某些事件或时间延迟后变为color =#353C3A。您应该在事件处理程序(如tihs)中检查它。
$('body', context).on('keyup', function(evt) {
if ($('body').css('color') === '#353C3A') { // hex color must convert to rgb
if (evt.keyCode === 27) {
alert('This is just a test to see this message');
}
}
});
您可以检查下面的链接,以将彩色十六进制转换为rgb:
{{3}}