Javascript 当老鼠下城时
我需要解决这个问题 当按下max按钮上的鼠标按钮时,变量Javascript 当老鼠下城时,javascript,dom,Javascript,Dom,我需要解决这个问题 当按下max按钮上的鼠标按钮时,变量max应增加1。当我按下min按钮时,max变量应该减少,但它对我不起作用 我怎样才能让它工作 <body> <button id="max" onmousedown="max()" >max</button> <input id="num" type="number" disabled="disabled" value="0"> <button id="min" onmousedo
max
应增加1。当我按下min按钮时,max
变量应该减少,但它对我不起作用
我怎样才能让它工作
<body>
<button id="max" onmousedown="max()" >max</button>
<input id="num" type="number" disabled="disabled" value="0">
<button id="min" onmousedown="min()">min</button>
<script type="text/javascript">
function max()
{
var x = document.getElementById("num").value
if (x<100) {var max= document.getElementById("num").value++;}
}
function min()
{
var x = document.getElementById("num").value
if (x>0) {var max= document.getElementById("num").value--;}
}
</script>
</body>
最大值
闵
函数max()
{
var x=document.getElementById(“num”).value
如果(x0){var max=document.getElementById(“num”).value--;}
}
这应该行得通
function max()
{
var numElement = document.getElementById("num");
var x= numElement.value
var fnc = function ()
{
if (x<100){
document.getElementById("num").value = x;
x++;
}
var i = setInterval(fnc, 100);
fnc();
document.onmouseup = function ()
{
clearInterval(i);
}
}
function min()
{
var numElement = document.getElementById("num");
var x= numElement.value
var fnc = function ()
{
if (x>0){
document.getElementById("num").value = x;
x--;
}
var i = setInterval(fnc, 100);
fnc();
document.onmouseup = function ()
{
clearInterval(i);
}
}
function max()
{
var numElement=document.getElementById(“num”);
var x=numElement.value
var fnc=函数()
{
if(x0){
document.getElementById(“num”).value=x;
x--;
}
var i=设定区间(fnc,100);
fnc();
document.onmouseup=函数()
{
间隔时间(i);
}
}
有几件事:
1-我已从输入标记中删除了内联事件
2-为了使间隔正常工作,您需要有一个对该过程的引用。在我的示例中,minInterval
和maxInterval
允许我调用clearInterval
onmouseup
3-要使这些脚本正常工作,您需要在加载/准备好DOM后运行脚本,因此请将代码放在正文
标记的末尾附近
4.speed
的值基本上是您希望间隔运行的速度
HTML
<button id="max" >max</button>
<input id="num" type="number" disabled="disabled" value="0">
<button id="min">min</button>
帮助链接:
但是我希望num.value在100和0之间,我不能使用循环,我不知道为什么?
var min = document.getElementById("min"),
max = document.getElementById("max"),
num = document.getElementById("num"),
speed = 10,
minInterval, maxInterval;
min.onmousedown = function(){
minInterval = setInterval(function(){
num.value--;
}, speed);
};
min.onmouseup = function(){
clearInterval(minInterval);
};
max.onmousedown = function(){
maxInterval = setInterval(function(){
num.value++;
}, speed);
};
max.onmouseup = function(){
clearInterval(maxInterval);
};