Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中老虎机的按住按钮_Javascript_Html - Fatal编程技术网

JavaScript中老虎机的按住按钮

JavaScript中老虎机的按住按钮,javascript,html,Javascript,Html,我正在用JavaScript构建一个吃角子老虎机游戏,但是我在按住按钮时遇到了问题。我想实现一个保持按钮,锁定一个选定的卷轴,但它不太适合我!以下是我目前得到的信息: var arr=[“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”]; 函数getNumbers(myPick){ document.getElementById(“reel1”).innerHTML=arr[Math.floor(Math.random()*arr.length)]; document.g

我正在用JavaScript构建一个吃角子老虎机游戏,但是我在按住按钮时遇到了问题。我想实现一个保持按钮,锁定一个选定的卷轴,但它不太适合我!以下是我目前得到的信息:

var arr=[“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”];
函数getNumbers(myPick){
document.getElementById(“reel1”).innerHTML=arr[Math.floor(Math.random()*arr.length)];
document.getElementById(“reel2”).innerHTML=arr[Math.floor(Math.random()*arr.length)];
document.getElementById(“reel3”).innerHTML=arr[Math.floor(Math.random()*arr.length)];
}
userChoice=myPick
函数保持(用户选择){
currentvalue=document.getElementById('reel1')。值;
if(userChoice==getElementById(“hold1”)){
document.getElementById(“reel1”).value=“On”;
}否则{
document.getElementById(“reel1”).value=“Off”;
}
}
*{
保证金:0;
填充:0;
}
玛格丽托先生{
保证金:0自动;
}
.按钮包装{
文本对齐:居中;
利润率最高:15%;
}
.拿着包装纸{
文本对齐:居中;
利润率:10px;
}
.卷筒包装机{
宽度:1280px;
文本对齐:居中;
边缘顶部:10px;
背景色:#ffffff;
}
.按钮{
背景色:白色;
}
.卷轴{
背景色:#ffffff;
显示:内联块;
字体大小:48px;
文本对齐:居中;
宽度:150px;
高度:200px;
边框:1px纯黑;
边界半径:2px;
}

给你的一些提示

  • 在使用变量和函数之前定义它们
  • 更正控制台中打印的所有错误
  • 看看下面的代码。它锁住了检查过的卷轴。我还没有为它创建单独的函数。你可以试试
  • var arr=[“1”、“2”、“3”、“4”、“5”、“6”、“7”、“8”、“9”];
    变量f1、f2、f3;
    setnum=函数(){
    if(document.getElementById(“hold1”).checked==false){
    document.getElementById(“reel1”).innerHTML=arr[Math.floor(Math.random()*arr.length)];
    }
    if(document.getElementById(“hold2”).checked==false){
    document.getElementById(“reel2”).innerHTML=arr[Math.floor(Math.random()*arr.length)];
    }
    if(document.getElementById(“hold3”).checked==false){
    document.getElementById(“reel3”).innerHTML=arr[Math.floor(Math.random()*arr.length)];
    }
    }
    *{
    保证金:0;
    填充:0;
    }
    玛格丽托先生{
    保证金:0自动;
    }
    .按钮包装{
    文本对齐:居中;
    利润率最高:15%;
    }
    .拿着包装纸{
    文本对齐:居中;
    利润率:10px;
    }
    .卷筒包装机{
    宽度:1280px;
    文本对齐:居中;
    边缘顶部:10px;
    背景色:#ffffff;
    }
    .按钮{
    背景色:白色;
    }
    .卷轴{
    背景色:#ffffff;
    显示:内联块;
    字体大小:48px;
    文本对齐:居中;
    宽度:150px;
    高度:200px;
    边框:1px纯黑;
    边界半径:2px;
    }

    您的示例本身并不直接起作用,但您的问题非常普遍,希望这会有所帮助

    如果你想“按住”一个按钮,你要做的就是看几场比赛。首先,要触发它,您需要监视
    mousedown
    事件。然后,要知道何时释放,您需要观察
    mouseup
    事件或
    mouseout
    事件(当您将鼠标移离元素时触发)

    mousedown
    也只会触发一次,因此如果您想在鼠标关闭时重复执行某项操作,则需要使用
    setInterval()
    命令鼠标每隔x毫秒执行一次操作

    像这样的东西可以达到目的:

    const myButton = document.getElementById('myButton'); // replace with what your button actually is
    
    let buttonIsDown = false;
    let holdIntervalId = null;
    
    myButton.addEventListener('mousedown', function () {
        buttonIsDown = true;
        holdIntervalId = setInterval(hold, 1000); // change 1000 to however many milliseconds you want between trigger
    });
    
    function buttonReleased() {
        buttonIsDown = false;
        clearInterval(holdIntervalId);
    }
    
    myButton.addEventListener('mouseup', buttonReleased);
    myButton.addEventListener('mouseout', buttonReleased);
    
    这可能会帮助您:“消息”:“ReferenceError:myPick未定义”、“消息”:“TypeError:onoff不是函数”和“消息”:“ReferenceError:getElementById未定义”,