Ve funkci mi to nic nedělá

Webdesign, HTML, CSS, Flash, PHP, ASP, .NET, JavaScript. Kritika www stránek na Smetišti.

Moderátor: Moderátoři Živě.cz

Odeslat příspěvekod RednammoC 26. 11. 2022 12:46

Dobrý den, chtěl bych se zeptat, proč mi to bez funkce funguje a s funkci to neudělá nic. Děkuji
html
Kód: Vybrat vše
<li><a id="funkce2" href="#">Přidání indexu[5] do pole holky - Zdenka</a></li>

js
Kód: Vybrat vše
var holky = ["Petra", "Lucka", "Marketa"];

funguje
Kód: Vybrat vše
holky[5] = "Zdenka";
console.log(holky);

nefunguje
Kód: Vybrat vše
function pole2() {
    holky[5] = "Zdenka";
    console.log(holky);
}
var zapnout2 = document.getElementById('funkce2');
zapnout2.onclick = pole2;
RednammoC
Junior

Odeslat příspěvekod Wikan 26. 11. 2022 13:03

A kdy ten JS vykonáváš? Pokud před načtením celé stránky, tak tam ten element ještě nemusí být.
Wikan
Moderátor
Uživatelský avatar

Odeslat příspěvekod RednammoC 28. 11. 2022 03:42

Při načtení stránky se načítá pouze pole holky a pole2, vše ostatní zapínám přes kliknutí na odkaz id="funkce2", ale nefunguje mi to jen u toho případu
html
Kód: Vybrat vše
<li><a id="funkce2" href="#">Přidání 5-tého indexu do pole - Zdenka</a></li>

js
Kód: Vybrat vše
var holky = ["Petra", "Lucka", "Marketa"];
var pole2 = [1, 2, 3];

function pole2() {
    holky[5] = "Zdenka";
    console.log(holky);
}
var zapnout2 = document.getElementById('funkce2');
zapnout2.onclick = pole2;

-------------------------------------------------------
například toto funguje jak má
html
Kód: Vybrat vše
<li><a id="funkce3" href="#">Přidání indexu dopředu - Klara</a></li>

js
Kód: Vybrat vše
function pole3() {
    holky.unshift("Klara")
    console.log(holky);
}
var zapnout3 = document.getElementById('funkce3');
zapnout3.onclick = pole3;
RednammoC
Junior

Odeslat příspěvekod Wikan 28. 11. 2022 08:00

No tak když tam máš proměnnou s názvem "pole2" a zároveň funkci se stejným názvem, tak se nemůžeš divit.
Wikan
Moderátor
Uživatelský avatar

Odeslat příspěvekod RednammoC 1. 12. 2022 15:22

Máš úplnou pravdu, super, dám si větší pozor.
RednammoC
Junior


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků