如何在 JS 中再次按下按钮之前创建一个函数 运行?
How to make a function run before a button can be pressed again in JS?
我正在尝试在 JavaScript 中编写一个程序,其中必须执行某些功能才能再次按下按钮。
该按钮执行的功能每回合只能执行一次,但我希望在下一回合之前执行其他操作,并在进入下一回合之前进行某种确认。在伪代码中,它可能看起来像这样:
buttonFunction();
actionOne();
actionTwo();
turnOverConfirm();
等等
但我不太确定该怎么做。现在可以随时按下按钮。我如何才能让用户必须确认才能再次按下按钮?
您可以使用javascript确认功能。此函数将弹出一个带有 ok
和 cancel
的消息框
这是一个例子
var r = confirm("Press a button!");
if (r == true) {
alert("OK was clicked");
} else {
alert("Cancel was clicked");
}
你可以做的是当用户点击一个按钮时,弹出一个确认框,然后如果他们点击确定你就可以 运行 你上面列出的功能。
您可以通过 javascript 禁用和启用按钮。你可以这样阻止它:
document.getElementById("button").disabled = true
只需再次将其设置为 false 即可使其再次可点击!
方法很少
- 您可以隐藏该按钮,直到处理准备就绪或替换为 "please wait..." 图片
- 您可以创建防止变量或删除临时点击事件函数
</p>
<pre><code>var Action = (function(){
var prevent = false;
function _start() {
if (prevent === false) {
prevent = true;
_process();
}
}
function _process() {
// DO Action
prevent = false;
}
return { start: _start }
})();
<a href="javascript:Action.start()">Fire</a>
您可以为每次点击创建事件这里是一个示例,其中警报和更改按钮颜色都在一个函数中
var clicked = 0;
var btn = document.getElementById("btn");
function clickBtn(){
if (clicked == 0) {
alert("it's first click");
btn.style.background = "black";
clicked = 1;
}else if (clicked == 1) {
alert("it's second click");
btn.style.background = "orange";
clicked = 2;
} else if (clicked == 2) {
alert("it's third click");
btn.style.background = "green";
clicked = 3;
}
}
#btn{
border-radius:15px 0 15px 0;
color:white;
border:none;
padding:15px;
background:blue;
font-weight:bold;
}
#btn:hover{
border-radius:0 15px 0 15px;
}
<button id="btn" onclick="clickBtn()">Click Me</button>
我正在尝试在 JavaScript 中编写一个程序,其中必须执行某些功能才能再次按下按钮。 该按钮执行的功能每回合只能执行一次,但我希望在下一回合之前执行其他操作,并在进入下一回合之前进行某种确认。在伪代码中,它可能看起来像这样:
buttonFunction();
actionOne();
actionTwo();
turnOverConfirm();
等等
但我不太确定该怎么做。现在可以随时按下按钮。我如何才能让用户必须确认才能再次按下按钮?
您可以使用javascript确认功能。此函数将弹出一个带有 ok
和 cancel
这是一个例子
var r = confirm("Press a button!");
if (r == true) {
alert("OK was clicked");
} else {
alert("Cancel was clicked");
}
你可以做的是当用户点击一个按钮时,弹出一个确认框,然后如果他们点击确定你就可以 运行 你上面列出的功能。
您可以通过 javascript 禁用和启用按钮。你可以这样阻止它:
document.getElementById("button").disabled = true
只需再次将其设置为 false 即可使其再次可点击!
方法很少
- 您可以隐藏该按钮,直到处理准备就绪或替换为 "please wait..." 图片
- 您可以创建防止变量或删除临时点击事件函数
</p>
<pre><code>var Action = (function(){
var prevent = false;
function _start() {
if (prevent === false) {
prevent = true;
_process();
}
}
function _process() {
// DO Action
prevent = false;
}
return { start: _start }
})();
<a href="javascript:Action.start()">Fire</a>
您可以为每次点击创建事件这里是一个示例,其中警报和更改按钮颜色都在一个函数中
var clicked = 0;
var btn = document.getElementById("btn");
function clickBtn(){
if (clicked == 0) {
alert("it's first click");
btn.style.background = "black";
clicked = 1;
}else if (clicked == 1) {
alert("it's second click");
btn.style.background = "orange";
clicked = 2;
} else if (clicked == 2) {
alert("it's third click");
btn.style.background = "green";
clicked = 3;
}
}
#btn{
border-radius:15px 0 15px 0;
color:white;
border:none;
padding:15px;
background:blue;
font-weight:bold;
}
#btn:hover{
border-radius:0 15px 0 15px;
}
<button id="btn" onclick="clickBtn()">Click Me</button>