IT rekvalifikácia. Seniorní programátori zarábajú až 6 000 €/mesiac a rekvalifikácia je prvým krokom. Zisti, ako na to!

Diskusia – 14. diel - Funkcie v JavaScripte

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
Michal Kučera:1.12.2015 19:08

Super článek, mám ale jeden dotaz. Používám NetBeans IDE (8.0.2) a když jsem si napsal podle vzoru kód, hlásilo mi to pořád chybu, že na místech kde je v kódu okomentováno zde, chybí napsat středník.

var promena_s_funkci = function(jmeno)
 {
       document.write("Ahoj " + jmeno + ", jsem rád že tě zas vidím.");
 } // ZDE
function zavolani_funkce(funkce, jmeno)
 {
      document.write("Volám funkci! <br>");
      document.write("Používám dva parametry - druhou funkci a jméno. <br>");
      funkce(jmeno);
  } // ZDE
zavolani_funkce(promena_s_funkci, "Karle");

Kdo má pravdu? Vy, nebo Netbeans? Předem děkuji za odpověď.

Odpovedať
1.12.2015 19:08
Lidé jsou jako stromy, když do nich sekáš sekerou, umřou.
Avatar
Jurajs
Člen
Avatar
Odpovedá na Michal Kučera
Jurajs:1.12.2015 20:21
function zavolani_funkce(jmeno)
{
   document.write("Moje jmeno je: "+ jmeno);
}
zavolani_funkce("Jurajs");

Takhle ne spis? co? :D :D

Editované 1.12.2015 20:23
 
Odpovedať
1.12.2015 20:21
Avatar
Odpovedá na Jurajs
Michal Kučera:1.12.2015 20:26

Je to podle článku :-D :-D :-D Nejde o ten obsah, ptal jsem se jenom na ty středníky..

Odpovedať
1.12.2015 20:26
Lidé jsou jako stromy, když do nich sekáš sekerou, umřou.
Avatar
Jurajs
Člen
Avatar
Odpovedá na Michal Kučera
Jurajs:1.12.2015 20:29

Ja kdyz jsem si ten kod prekopiroval z clanku ke me tak zadna chyba :D

 
Odpovedať
1.12.2015 20:29
Avatar
Petr Šťastný
Tvůrce
Avatar
Petr Šťastný:10.12.2015 16:36

Ahoj, potřebuju pomoct :-)

Teď dělám takový projekt, jehož součástí je asi 10 webových stránek :-)

Potřebuju udělat, že dejme tomu stránka A vytvoří soubor cookie a stránka B ho načte. Jde to vůbec udělat?

A jestli ne, je nějaká jiná možnost, jak udělat více stránek, které by spolu sdílely data, jako např. ty cookies? (třeba na 1. uživatel napíše své jméno a ostatní stránky ho pod tím jménem budou zdravit...)

A jestli ne, jak udělám třeba to, jak:
itnetwork.cz je zákl stránka
itnetwork.cz/ja­vascript/zakla­dy/tutorial-javascript-funkce má úplně jiný obsah než ta 1., ale cookies využívají všechny jedny, ne?

Ukázka vytvoření souboru cookie

<script>
function souhlas(){
    var cookie = document.cookie

    if (confirm("Stisknutím tlačítka OK  potvrzuješ, že souhlasíš, aby tento web ukládal soubory COOKIE do tvého počítače. Stisknutím tlačítka COOKIES (dole na stránce) se ti zobrazí informace o COOKIES.") == true) {
       document.cookie="cookiesouhlas=yes; expires=Thu, 1 Dec 2020 12:00:00 UTC";
    }
}
</script>

Ukázka kódu, který potřebuje načíst soubory cookie z 1. stránky

...
    <p><strong>Zde jsou zapsány všechny soubory cookies, které jsme do vašeho počítače uložili.</strong></p>
    <script>
       var x = document.cookie;
       document.write(x);

    </script
Editované 10.12.2015 16:37
 
Odpovedať
10.12.2015 16:36
Avatar
Tomáš Brůna
Tvůrce
Avatar
Odpovedá na Petr Šťastný
Tomáš Brůna:10.12.2015 16:44

Myslím že tohle obstarává php

Odpovedať
10.12.2015 16:44
Vi veri universum vivus vici
Avatar
Petr Šťastný
Tvůrce
Avatar
 
Odpovedať
10.12.2015 17:53
Avatar
Petr Šťastný
Tvůrce
Avatar
Petr Šťastný:13.12.2015 14:59

Ahoj, mám problém.

Napsal jsem funkci do externího souboru

function Boj(Sance,Zceho,tt,tf)/*Např. 1,10==1:10  tt = co udelas, kdyz prezijes  tf = co udelas, kdyz umres */
    {
           var Random = Math.floor(Math.random() * (Zceho - 1 + 1)) + 1;

    if(Random<=Sance){
       tt

     }else{
       tf

       }
  }

a volám ji pomocí tlačítka

<button type="button" onclick="function boj(1,2,location.href='a5.html',location.href='hrob.html')">Bojovat s ghúlem mečem</button>

Když si stránku načtu a na tlačítko kliknu, nic se nestane. Kde mám chybu?

 
Odpovedať
13.12.2015 14:59
Avatar
Odpovedá na Petr Šťastný
Neaktivní uživatel:13.12.2015 15:29

Nepis tam onclick="function boj(params)"

ma tam byt jen onclick="boj(pa­rams);"

Odpovedať
13.12.2015 15:29
Neaktivní uživatelský účet
Avatar
Petr Šťastný
Tvůrce
Avatar
Petr Šťastný:18.12.2015 15:05

A ještě něco :-)

Mám tady funkci, která by měla náhodně vytvořit hádanku a předložit ji uživateli, ten napíše odpověď a podle odpovědi ho to přesměruje.

Nefunguje to, vždy se zobrazí jedna, kterou vybralo náhodné číslo a poté se objeví všechny ostatní.

function Hadanka(t,f)
    {
      var Random = Math.floor(Math.random() * 7) + 1      // 8 HADANEK

      switch (Random){
        case 1:
            var odpoved = prompt("Nemá plíce, přece dýcha, studená a věčně tichá, věčne pije na své zdraví, v brnění, co nerezaví");
              switch (odpoved) {
                case "ryba":
                case "RYBA":
                case "Ryba":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

              }
        break;
        case 2:
            var odpoved = prompt("Oko v tváři blankytné se točí, v tváři zelené zas jiné oči. První oko na to vece, tyhle podobné mi jsou přece. Jenže jsou to oči nižší, než já oko v této výši.", "Odpoveď 1 Odpoveď 2");
              switch (odpoved) {
                case "slunce pampelisky":
                case "Slunce pampelisky":
                case "SLUNCE PAMPELISKY":
                case "slunce pampelišky":
                case "Slunce pampelišky":
                case "SLUNCE PAMPELIŠKY":
                case "slunce Pampelisky":
                case "slunce Pampelišky":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
        case 3:
            var odpoved = prompt("Vše žere, všechno se v něm ztrácí, květy, stromy, zvířata i ptáci. Hryže kov, i pláty z ocele, tvrdý kámen na prach semele. Města rozvalí a krále skolí, vysokánské hory svrhne do údolí.");
              switch (odpoved) {
                case "čas":
                case "ČAS":
                case "Čas":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
          case 4:
            var odpoved = prompt("Kořeny má skryté v zemi, vypíná se na jedlemi. Stoupá pořád výš a výš, ale růst ji nevidíš.");
              switch (odpoved) {
                case "Hora":
                case "hora":
                case "HORA":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
          case 5:
            var odpoved = prompt("Bez klíče a víka schránka pokladní, a přece je zlatý poklad v ní.");
              switch (odpoved) {
                case "vajíčko":
                case "VAJIČKO":
                case "Vajíčko":
                case "vajíško":
                case "Vajíško":
                case "VAJÍŠKO":
                case "vajicko":
                case "Vajicko":
                case "VAJICKO":
                case "vajisko":
                case "Vajisko":
                case "VAJISKO":
                case "vejce":
                case "Vejce":
                case "VEJCE":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
        case 6:
            var odpoved = prompt("Třicet běloušů na růdé líše, napřed žvýkají, potom dupají a pak stojí tiše");
              switch (odpoved) {
                case "zuby":
                case "Zuby":
                case "ZUBY":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
        case 7:
            var odpoved = prompt("Není ji vidět, nejde ji cítit, nejde ji slyšet, nejde ji chytit. Je za horami a pod horami a vyplňuje prázdné jámy. Byla tu předtím a přijde pak a nakonec ti vytře zrak.");
              switch (odpoved) {
                case "tma":
                case "Tma":
                case "TMA":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
        case 8:
            var odpoved = prompt("Obalenou kůžičkou bílou jako mléko, skryto v mramoru, leží mé zlato žluté jablko. Nevede ke mě cesta, ale někdo přesto může ukrást mé zlato.");
              switch (odpoved) {
                case "vajíčko":
                case "VAJIČKO":
                case "Vajíčko":
                case "vajíško":
                case "Vajíško":
                case "VAJÍŠKO":
                case "vajicko":
                case "Vajicko":
                case "VAJICKO":
                case "vajisko":
                case "Vajisko":
                case "VAJISKO":
                case "vejce":
                case "Vejce":
                case "VEJCE":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
        case 9:
            var odpoved = prompt("Nemá plíce, přece dýcha, studená a věčně tichá, věčne pije na své zdraví, v brnění, co nerezaví");
              switch (odpoved) {
                case "ryba":
                case "RYBA":
                case "Ryba":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);

                }
          case 10:
            var odpoved = prompt("Nemá plíce, přece dýcha, studená a věčně tichá, věčne pije na své zdraví, v brnění, co nerezaví");
              switch (odpoved) {
                case "ryba":
                case "RYBA":
                case "Ryba":
                  window.location.replace(t);
                break;
                default:
                  window.location.replace(f);


              }






        }




    }

Volání funkce:

<button type="button" onclick="Hadanka('a5.html','bojSFINGA.html')">Hádat</button>
 
Odpovedať
18.12.2015 15:05
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!