У меня есть 5 тегов div с возможностью щелчка, на экране div отображается желтый квадрат с числом внутри. Когда пользователь щелкает квадрат, цвет квадрата меняется, показывая, что щелкнутый квадрат является «активным» квадратом (эта часть работает отлично). Затем пользователь должен иметь возможность нажимать номер. Когда номер нажата, номер, отображаемый в div, должен измениться на номер, который они нажали!
НО ... Не работает! в качестве атрибута div у меня есть onkeypress = "(функция для изменения innerHTML тега)".
Для тестирования я написал onkeypress = "alert ('key');" в качестве атрибута div, чтобы узнать, была ли это моя функция javascript или сам onKeyPress! но предупреждение даже не отображается!
Я попытался поместить предупреждение onKeyPress в тег body, и все сработало. это просто div! Я также пробовал нажимать клавишу до того, как щелкнул div, и после того, как щелкнул div!
Еще пробовал onkeydown и onkeyup!
Я действительно не вижу проблемы! Код следующий:
<html>
<head>
<style type="text/css">
#grid {
position:absolute;
padding: 0;
border:0;
width:370px;
height:370px;
}
.box
{
position:absolute;
border: 2px solid Black;
height: 50px;
width: 50px;
vertical-align: middle;
text-align: center;
background-color: yellow;
font-size: xx-large;
color:Navy;
font-family: Arial;
margin:10px;
line-height:1.6;
}
.boxActive
{
background-color:Aqua;
}
</style>
<script type="text/javascript>
function clicked(id) {
reset();
$(id).addClass('boxActive');
}
</script>
<script type="text/javascript" src="JQuery.js"></script>
</head>
<body>
<div id="grid">
<div id="cell_0_0" class="box" onclick="clicked(this);" onkeypress="alert('key');" style="top:0%; left:0%; ">0</div>
<div id="cell_0_1" class="box" onclick="clicked(this);" onkeypress="alert('key');" style="top:0%; left:20%; ">0</div>
<div id="cell_0_2" class="box" onclick="clicked(this);" onkeypress="alert('key');" style="top:0%; left:40%; ">0</div>
<div id="cell_0_3" class="box" onclick="clicked(this);" onkeypress="alert('key');" style="top:0%; left:60%; ">0</div>
<div id="cell_0_4" class="box" onclick="clicked(this);" onkeypress="alert('key');" style="top:0%; left:80%; ">0</div>
</div>
</body>
</html>
Может ли кто-нибудь предложить, как исправить это, ИЛИ метод изменения innerHTML тегов div, когда пользователь щелкает div и нажимает клавишу!
Спасибо!!!
Алекс