Nastavení onclick s javascriptem pracuje pouze s timeout

hlasů
1

I v současné době mají tlačítko, které jsem nastaveno onclick k poté, co jsem vytvořit prvku v jazyce JavaScript:

document.querySelector('.info').forEach(element => {
    element.innerHTML = `<button id=show-popup-${id}>Show</button>`;
});

V současné době pouze mající onclick během časového limitu prací:

window.setTimeout(function() {
  document.getElementById('show-popup').onclick = function() {
    console.log(Hello);
  }
}, 50);

Napadlo mě, jestli existuje nějaký způsob, jak být schopen odstranit tento časový limit, protože mám pocit, jako by to mohlo trvat déle než 50ms pro prvek omítky, což by vedlo k onclicktvůrce selhání?

Chtěl bych použít čistý javascript za to.

Všichni společně:

document.querySelector('.info').forEach(element => {
    element.innerHTML = `<button id=show-popup-${id}>Show</button>`;

    window.setTimeout(function() {
      document.getElementById('show-popup').onclick = function() {
      console.log(Hello);
  }
}, 50);
});


Položena 03/12/2019 v 00:01
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

Nastavení onclick s javascriptem pracuje pouze s timeout

hlasů
1

I v současné době mají tlačítko, které jsem nastaveno onclick k poté, co jsem vytvořit prvku v jazyce JavaScript:

document.querySelector('.info').forEach(element => {
    element.innerHTML = `<button id="show-popup-${id}">Show</button>`;
});

V současné době pouze mající onclick během časového limitu prací:

window.setTimeout(function() {
  document.getElementById('show-popup').onclick = function() {
    console.log("Hello");
  }
}, 50);

Napadlo mě, jestli existuje nějaký způsob, jak být schopen odstranit tento časový limit, protože mám pocit, jako by to mohlo trvat déle než 50ms pro prvek omítky, což by vedlo k onclicktvůrce selhání?

Chtěl bych použít čistý javascript za to.

Všichni společně:

document.querySelector('.info').forEach(element => {
    element.innerHTML = `<button id="show-popup-${id}">Show</button>`;

    window.setTimeout(function() {
      document.getElementById('show-popup').onclick = function() {
      console.log("Hello");
  }
}, 50);
});


Odpovězeno 03/12/2019 v 00:01
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more