-3

嗨,我正在尝试组合 2 个 javascript onClick 函数,以便它们只有在两者都被点击后才会触发,这是我目前尝试的。

Javascript

click.onclick = function() {
   for (let i = 0; i < 1; i++) {
       console.log("Clicks counted " + I);
   }
}

click2.onclick = function() {
  for (let i = 0; i < 1; i++) {
      console.log("Clicks counted " + I);
  }
}

if (click.onclick && click2.onclick === true) {
   console.log("You have clicked on both onClicks");
}

HTML

<section>
    <button id="button-click">Nice</button>
    <button id="button-click-2">Even nicer</button>
</section>

我知道超级简单,但我只是想弄清楚如何执行此操作,因为它用于 API 调用,因此需要单击两个按钮然后发送语句。

4

1 回答 1

1

您可以使用检查值的函数。该值是通过使用按位或与1or组成的2,对于更多按钮,每个按钮的值加倍。

在检查功能中,检查 2 n - 1 的值,以进行两次检查3

let clickButtons = 0;

function check() {
    if (clickButtons === 3) console.log("You have clicked on both onClicks");
}

document.getElementById("button-click").addEventListener('click', function() {
   clickButtons |= 1;
   check();
});

document.getElementById("button-click-2").addEventListener('click', function() {
   clickButtons |= 2;
   check();
});
<section>
    <button id="button-click">Nice</button>
    <button id="button-click-2">Even nicer</button>
</section>

于 2022-01-04T11:10:43.117 回答