Javascript 功能在两次单击后激活

Javascript 功能在两次单击后激活,javascript,button,Javascript,Button,嘿,我只使用javascript+html 在按钮被点击两次(或更多)后,是否有办法激活功能?我希望按钮在第一次单击时不做任何操作。可能是这样的吗 var numberTimesClicked = 0; function clickHandler() { if (numberTimesClicked > 0) { // do something... } numberTimesClicked++; } document.getElementById

嘿,我只使用javascript+html


在按钮被点击两次(或更多)后,是否有办法激活功能?我希望按钮在第一次单击时不做任何操作。

可能是这样的吗

var numberTimesClicked = 0;
function clickHandler() {
    if (numberTimesClicked > 0) {
        // do something...
    }
    numberTimesClicked++;
}

document.getElementById("myBtn").addEventListener("click", clickHandler);

有两种方法可以做到这一点,一种是在html按钮中有一个数据属性,用于标识单击是否完成

<button id="btn">Click Me!</button>

<script>
var clickedAlready = false;

document.getElementById('btn').onclick = function() {
  if (clickedAlready) {
//do something...
}
else
  clickedAlready = true; 
}
</script>
点击我!
var clickedAlready=false;
document.getElementById('btn')。onclick=function(){
如果(单击“已准备”){
//做点什么。。。
}
其他的
单击already=true;
}
虽然全局变量不是处理它的最佳方式,但这给了您一个想法。另一种选择是将该值存储在隐藏输入中,并修改该值以确定它是否是第一次单击。

对于“双击”,当用户快速按下鼠标按钮两次(例如在桌面上打开程序)时,您可以使用事件侦听器
dblclick
代替
单击事件

举个简单的例子,看看下面的代码。 这段代码只是为“item”的HTMLElement创建了一个事件侦听器,可以使用
getElementById
找到它

<div id="item" style="width:15px;height:15px;background-color:black;"></div>

<script>
    var item = document.getElementById('item');
    item.addEventListener('dblclick',function(e) {
        var target = e.target || e.srcElement;
        target.style.backgroundColor = 'red';
    },false);
</script>

两次点击,还是一次双击?有一点不同。@NullUserException两次点击,最好是两个不同的按钮。只需设置计数器,每次点击递增。仅当计数器达到所需值时才执行此功能value@user3561779那么,每次点击2次,总共点击4次以上?还是每点击一次?“如果信息发生变化,我们将无法很好地帮助所有人。”乔纳森·洛诺夫斯基总共点击了两次,很抱歉没有具体说明。非常感谢!这是完美的,很快回答!
<div id="item" style="width:15px;height:15px;background-color:black;"></div>

<script>
    var item = document.getElementById('item');
    item.addEventListener('click',function(e) {
        var target = e.target || e.srcElement;
        var clicks = 0;
        if(target.clicks)
            clicks = target.clicks;
        else
            target.clicks = 0;
        if(clicks >= 4) {
           target.style.backgroundColor = 'red';
        }
        target.clicks += 1;
    },false);
</script>
<input type="button" id="button1">
<input type="button" id="button2">
<div id="result" style="width:15px;height:15px;background-color:black;"></div>

<script>
var result = document.getElementById('result');
var button1 = document.getElementById('button1');
var button2 = document.getElementById('button2');

var button1Clicked = false;
var button2Clicked = false;

button1.addEventListener('click',function(e) {
    button1Clicked = true;
    checkClick();
},false);
button2.addEventListener('click',function(e) {
    button2Clicked = true;
    checkClick();
},false);

function checkClick() {
   if(button1Clicked && button2Clicked) {
      result.style.backgroundColor = 'red';
   }
}
</script>