У меня на моей коробке кнопка:
<div id="close" class="close">CLOSE</div>
<div id="infocontent" class="infocontent">lorem ipsum dolor</div>
и мой код jquery:
$('#close').click(function() {
$('#infocontent').hide();
$('#infocontent').addClass('cnthidden');
});
Я попытался настроить функцию клавиатуры, чтобы включить мой бокс, но это не так, любая идея?
if($('#infocontent').hasClass('cnthidden')) {
$.keydown(function() {
$('#infocontent').show();
});
}
Мне нужно просто включить этот ящик, если я использую keydown...
Вам нужно связать это событие keydown с элементом. Предполагая, что вы хотите отобразить окно document keydown
,
$(document).keydown(function() {
if($('#infocontent').hasClass('cnthidden')) {
$('#infocontent').removeClass('cnthidden');
//assuming cnthidden has display:none property
}
});
Попробуйте следующий код:
$('#close').click(function() {
$('#infocontent').hide();
$('#infocontent').addClass('cnthidden');
});
$(document).keydown(function() {
if($('#infocontent').hasClass('cnthidden')) {
$('#infocontent').show();
}
});
Вы, где проверяете, имел ли элемент класс, когда он впервые загрузился, и это не так. Вы добавляете класс в обработчик кликов, поэтому вам нужно проверить его в функции keydown
. Также вам необходимо привязать функцию keydown
к элементу. document
был использован в моем примере.
$.keydown
? Вам нужно привязатьkeydown
к элементу.