【发布时间】:2011-12-07 01:49:08
【问题描述】:
我需要在网页上显示一个数字,当按下向上或向下箭头键时该数字会增加或减少。我找到/按摩了一起 javascript 文件来执行此操作,但我似乎无法让它与我的 HTML 一起使用。我试图将它链接到一个 html 文本框,但它不起作用。
如果有人可以帮助我使用 HTML 来完成这项工作,那就太好了。
var setTimeoutId;
var keyIs = "up";
function myIncrementFunction()
{
var num = parseFloat(myText.value)+1;
myText.value = num;
}
myText.onkeydown = function(e)
{
keyIs = "down";
if(keyIs == "down")
{
var e = e || event ;
if (e.keyCode == 38)
{
for(var s=0; s<1; s++)
setTimeoutId = setTimeout('myIncrementFunction()',100);
}
}
}
myText.onkeyup = function(e)
{
keyIs = "up";
}
试过了还是不行.. > ?
数字.html
<html>
<head>
<script type="text/javascript" src="number.js"></script>
</head>
<body>
<input type="text" id="myText" />
</body>
</html>
number.js
var myText = document.getElementById("myText");
// Capture keyDown events
myText.onkeydown = function(e) {
// "38" is the up arrow key
if (e.keyCode == 38) {
// increment the value in the text input
myText.value++;
// "40" is the down arrow key
} else if (e.keyCode == 40) {
// decrement the value in the text input
myText.value--;
}
}
我不明白为什么它在发布的示例中有效,当我保存文件并在浏览器中打开它时它不起作用!
我在 OSX Lion 上使用 Chrome/Safari
【问题讨论】:
-
您也可以发布您的 HTML 吗?此外,“我似乎无法让它与我的 HTML 一起工作”有点含糊。您是否收到任何错误消息?运行代码时究竟会发生什么?
-
您似乎没有在 Javascript 中定义“myText”实际上是什么。
-
没有错误消息,它什么也不做。我有一个名为“myText”的简单文本字段,我知道这有点模糊我根据一个论坛帖子将它放在一起,该帖子也缺少 HTML,所有海报都说他有一个文本字段,你可以使用这个脚本来增加它。
标签: javascript html numbers increment