IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Znovu použiteľný funkcia v jquery.

V předchozím kvízu, Online test znalostí JavaScript, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Libor Šimo (libcosenior):21.5.2016 7:08

Povedzme, že mám takýto script:

$(function() {
    $("#1").mouseenter(function() {
       $('#zakusok').attr('src', zakusky[0][2]);
       $('#nazov').text(zakusky[0][1]);
       $('#davka').text(zakusky[0][3]);
    });
    $("#2").mouseenter(function() {
       $('#zakusok').attr('src', zakusky[1][2]);
       $('#nazov').text(zakusky[1][1]);
       $('#davka').text(zakusky[1][3])
    });
    $("#3").mouseenter(function() {
       $('#zakusok').attr('src', zakusky[2][2]);
       $('#nazov').text(zakusky[2][1]);
       $('#davka').text(zakusky[2][3])
    });
    ...
    ...
    ...
    $("#36").mouseenter(function() {
       $('#zakusok').attr('src', zakusky[35][2]);
       $('#nazov').text(zakusky[35][1]);
       $('#davka').text(zakusky[35][3])
    });
});

V kóde vidieť, že sa opakuje. Potreboval by som na to funkciu, kde by stačilo dosadiť parametre a nemuseli by sa vypisovať všetky štyri riadky (kód by sa skrátil na štvrtinu).
Je také niečo možné?
Ak áno, nasmerujte ma prosím.

Odpovědět
21.5.2016 7:08
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Libor Šimo (libcosenior):21.5.2016 8:53

Tak som to už vyriešil. :-D
Vytvoril som funkciu:

function pohyb(id, image, druh, pocet) {
  $(id).mouseenter(function() {
       $('#zakusok').attr('src', image);
       $('#nazov').text(druh);
       $('#davka').text(pocet);
  });
}

Použitie:

pohyb("#1", zakusky[0][2], zakusky[0][1], zakusky[0][3]);
pohyb("#2", zakusky[1][2], zakusky[1][1], zakusky[1][3]);
pohyb("#3", zakusky[2][2], zakusky[2][1], zakusky[2][3]);
...
pohyb("#36", zakusky[35][2], zakusky[35][1], zakusky[35][3]);
Nahoru Odpovědět
21.5.2016 8:53
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.