Проверьте, больше ли время с момента последнего клика, чем 2 секунды - PullRequest
0 голосов
/ 19 октября 2018

Если вы нашли способ сделать это благодаря этому сообщению , но, как вы можете видеть по приведенному ниже коду, я пытаюсь console.log('Done');, когда время с момента последнего нажатия превышает 2 секунды.Однако это не работает.

var lastClick =  0;
var button_pressed = false;

let button1 = document.getElementById('button1');
let button2 = document.getElementById('button2');

button1.onclick = function() {
  button_pressed = true;
  CheckAnswer();
}

button2.onclick = function() {
  button_pressed = true;
  CheckAnswer();
}

function CheckAnswer() {
  if(button_pressed === true) {
    var d = new Date();
    var t = d.getTime();
    if(t - lastClick < 2000) {
      console.log('Continue');
    }
  } else if (t - lastClick > 2000) {
    console.log('Done');
  }
  lastClick = t;
}
<button id="button1">Button1</button>
<button id="button2">Button2</button>

Спасибо за помощь.

Ответы [ 2 ]

0 голосов
/ 19 октября 2018

var lastClick = Date.now();
var button_pressed = false;

let button1 = document.getElementById('button1');
let button2 = document.getElementById('button2');

button1.onclick = function() {
  button_pressed = true;
  CheckAnswer();
}

button2.onclick = function() {
  button_pressed = true;
  CheckAnswer();
}

function CheckAnswer() {
  var t = Date.now();
  var diff = t - lastClick;
  if(diff < 2000) {
      console.log('Continue');
  } else {
      console.log('Done');
  }
  lastClick = t;
}
<button id="button1">Button1</button>
<button id="button2">Button2</button>
0 голосов
/ 19 октября 2018

Код никогда не достигает другого, если, потому что он требует button_pressed, чтобы быть false Я исправил ваш код, см. Ниже.else if теперь объявляется в операторе button_pressed === true.

function CheckAnswer() {
  if(button_pressed === true) {
    var d = new Date();
    var t = d.getTime();
    if(t - lastClick < 2000) {
      console.log('Continue');
    } else {
       console.log('Done');
    }
  }
  lastClick = t;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...