• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

addEventListener co robię nie tak?

Object Storage Arubacloud
0 głosów
211 wizyt
pytanie zadane 1 maja 2018 w JavaScript przez GracjanDogg Użytkownik (840 p.)
function tabela(){
    var row = document.getElementById("myTr");
    row.src = "martwykaktoolodyga.png";
    var x = row.insertCell(-1);
    x.innerHTML = '<center><img src="martwykaktoolodyga.png" width="50px"></center>';
    x.addEventListener("onclick", function(x){
        alert("Cell index is: " + x.cellIndex);
    });
<table id="tabela">
 <tr id="myTr">                         
 </tr>
</table>

Czemu tworzącemu się <td> nie mogę przypisać tej funkcji? Gdy zrobię w html <td onclick="tutajFunkcjazAlertem(this)"> to wszystko działa, zapisuje w alercie numer z indexem, ale już w addEventListener nie, nic się nie wyświetla. Wpisuję w konsoli tę funkcję i pisze, że index jest niezdefiniowany.

komentarz 1 maja 2018 przez adrian17 Ekspert (344,860 p.)
zdarzenie nazywa się `click`, nie `onclick`.
komentarz 1 maja 2018 przez GracjanDogg Użytkownik (840 p.)
'click' również nie działa, zmieniłem to na 'onclick' jak już pomysłu nie miałem.

3 odpowiedzi

+1 głos
odpowiedź 1 maja 2018 przez hun1er76 Stary wyjadacz (11,960 p.)

Najpierw wczytać strukturę DOM, a dopiero później kod js. A poza tym obiektem właściwości cellIndex powinien być this.

komentarz 1 maja 2018 przez GracjanDogg Użytkownik (840 p.)
"Najpierw wczytać strukturę DOM, a dopiero później kod js" W jaki sposób?
komentarz 1 maja 2018 przez Mariusz08 Maniak (62,300 p.)
komentarz 1 maja 2018 przez adrian17 Ekspert (344,860 p.)

 A poza tym obiektem właściwości cellIndex powinien być this.

(a jeszcze lepiej użyć event.target)

+1 głos
odpowiedź 1 maja 2018 przez BT101 Stary wyjadacz (12,540 p.)

Domknij funkcje i ją wywołaj bo bez wywołania ten kod w ogóle się nie wykona.. No i zmień onclick na click i nie używaj center.. I img powinien mieć alt...

Przeanalizuj sobie prosty przykład.

Sprawdź czy nie masz jeszcze jakichś innych błędów w konsoli.

0 głosów
odpowiedź 1 maja 2018 przez GracjanDogg Użytkownik (840 p.)
Znalazłem rozwiązanie, bardzo mi pomogliście.

Podobne pytania

0 głosów
1 odpowiedź 559 wizyt
0 głosów
1 odpowiedź 496 wizyt
0 głosów
2 odpowiedzi 479 wizyt
pytanie zadane 7 czerwca 2022 w JavaScript przez lenzo1 Początkujący (360 p.)

92,551 zapytań

141,393 odpowiedzi

319,523 komentarzy

61,936 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...