home *** CD-ROM | disk | FTP | other *** search
/ Chip 1999 October / Chip_1999-10_cd.bin / obsahy / Chip_txt / TXT / 156.txt < prev    next >
Text File  |  1999-08-30  |  21KB  |  400 lines

  1. Tipy, triky, makra pro aplikace Office a JavaScript
  2. První polovina dneτní nadílky je v╪nována kancelá²sk∞m aplikacím z microsoftské sady Office, v druhé polovin╪ se podíváme, co vτechno dokáºete pomocí skriptového interpretového jazyka s názvem JavaScript.
  3.  
  4. Excel
  5. Pozor na rozsahy funkcí
  6. P²edpokládejme, ºe máme seznam, kter∞ budeme doplσovat, a zajímá nás aktuální souƒet v n╪kterém sloupci. Zapíτeme-li místo souƒtu do buσky za poslední zapln╪n∞ ²ádek seznamu, nap². =suma(F1:F100), "pro jistotu" souƒet do buσky v ²ádku na konci listu, nap². na ²ádek 16000 zapíτeme =suma(F1:F15999), nafoukne se velikost seτitu v Excelu verze 7 (95) o více neº 350 KB!
  7. Toto vτak uº naτt╪stí neplatí ve verzi 97 a 2000. Zde màºeme nap². do buσky F50000 napsat = suma(F1:F49999) a velikost seτitu se nezm╪ní oproti zápisu =suma(F1:F100).
  8.  
  9. Variantní funkce
  10. Pon╪kud stranou pozornosti uºivatelà zàstává funkce SUBTOTAL.
  11. Ta má jako argument kód funkce, kter∞m urƒíme, jak∞ v∞poƒet se má provést. V nabídce je 11 funkcí: suma, pràm╪r, min, max atd. Zm╪nou kódu funkce, na obrázku je v buσce C2, obdrºíme v∞sledek získan∞ jinou funkcí. Nemusíme tedy m╪nit klíƒové slovo funkce, ale jen ƒíseln∞ kód. Pro ràzné anal∞zy jde o velice pohotové a pohodlné ²eτení. Na obrázku je funkce SUBTOTAL v buσce C12 a kód funkce se zapisuje do buσky C2.
  12. Poznámka:
  13. Vyuºíváte-li souhrny nebo kontingenƒní tabulky, je p²i nich funkce SUBTOTAL pouºita automaticky.
  14.  
  15. Vyhledávání v seznamu
  16. Pro vyhledávání v seznamu ƒi tabulce màºeme v Excelu pouºít dva druhy funkcí. P²edevτím je to SVYHLEDAT p²i hledání ve sloupci, resp. VVYHLEDAT p²i hledání v ²ádku. Tato funkce vτak p²edpokládá, ºe sloupec (²ádek), ve kterém se prohledává, je se²azen∞ vzestupn╪. Na obrázku je funkce SVYHLEDAT v buσce D2, která vrátí funkci ze seznamu E5:F15 pro zapsan∞ kód funkce v buσce C2. P²edpoklad se²azení sloupce, ve kterém se prohledává, vτak nemusí b∞t vºdy spln╪n. Jsou-li hodnoty p²eházeny, pouºijeme databázovou funkci DZ╓SKAT. Viz obrázek, na kterém se pro název funkce v buσce D2 vrací kód funkce ze seznamu (databáze) E4:F15. Funkce je uvedena v buσce C17. Tuto funkci màºeme pouºít pouze pro seznam (tedy data pod sebou). Jsou-li v seznamu duplicitní názvy, vrátí funkce hodnotu z prvního záznamu, kter∞ podmínku splní.
  17.  
  18. Uºivatelské seznamy
  19. Jestliºe se neustále opakuje stejn∞ seznam, nap². jména zam╪stnancà, seznam st²edisek, rozpracovan∞ch akcí atd., màºeme pro jejich v∞pis pouºít automatické (uºivatelské) seznamy. Zapíτeme-li potom n╪kter∞ ƒlen seznamu do buσky a potáhneme za prav∞ spodní roh této buσky, doplní se do bun╪k dalτí ƒleny seznamu automaticky.
  20. Postup vyvo²ení seznamu (viz obrázek):
  21. 1.    Do bun╪k zapíτeme seznam.
  22. 2.    Seznam vyznaƒíme jako blok.
  23. 3.    Zadáme p²íkaz Nástroje|Moºnosti a na kart╪ "Seznamy" stiskneme tlaƒítko "Importovat".
  24. 4.    Následn╪ "OK".
  25. Poznámka:
  26. Dopln╪n∞ seznam zruτíme tlaƒítkem "Odstranit".
  27. Dopln╪n∞ seznam màºeme pouºít jako první kl탠p²i ²azení. Zadáme p²íkaz Data|Se²adit a po stisku tlaƒítka "Moºnosti" vybereme v poloºce "Hlavní kl탠²azení" dopln╪n∞ seznam. Vτechny poloºky se stejn∞m názvem se nám tak dostanou k sob╪. Viz obrázek.
  28.  
  29. Rychlé vloºení funkce do oblasti
  30. Pot²ebujeme-li vloºit do oblasti bun╪k funkci, d╪láme to nejƒast╪ji tak, ºe funkci zapíτeme do první buσky oblasti a do dalτích funkci zkopírujeme:
  31.  Pouºijeme p²íkaz Θpravy|Kopírovat a následn╪ po oznaƒení oblasti Θpravy|Vloºit.
  32.  Na buσce se vzorcem stiskneme kombinaci kláves Ctrl+C a po vyznaƒení oblasti Ctrl+V.
  33.  Táhneme lev∞m tlaƒítkem myτi za prav∞ spodní roh první buσky se vzorcem.
  34. Màºeme vτak pouºít i dalτí, mén╪ znám∞ zpàsob, a to hromadn∞ vstup.
  35. 1.     Oznaƒíme celou oblast, do které budeme vzorec vkládat.
  36. 2.     Zapíτeme vzorec (funkci).
  37. 3.    Stiskneme kombinaci kláves Ctrl+Enter.
  38.  
  39. Nastavení vzhledu n╪kolika stránek najednou
  40. Pro n╪kolik listà (nebo pro vτechny listy seτitu) màºeme nastavit vzhled stránky najednou tak, ºe oznaƒíme listy a zadáme p²íkaz Soubor|Vzhled stránky. Nastavené parametry se pouºijí pro vτechny oznaƒené listy. Doplníme-li ƒíslování stránek, budou stránky ƒíslovány pràb╪ºn╪. ¼íslování z prvního oznaƒeného listu bude pokraƒovat ƒíslováním stránek na dalτím oznaƒeném listu.
  41.  
  42. Oznaƒování listà seτitu Excelu
  43. Jeden list - klepneme myτí na záloºku listu. Dalτí list - stiskneme klávesu Ctrl a klepneme myτí na záloºku. Takto màºeme oznaƒit nesouvislou oblast listà. Souvislou oblast listà oznaƒíme tak, ºe klepnutím myτi na záloºku oznaƒíme první (resp. poslední) list, stiskneme klávesu Shift a klepeme na poslední (resp. první) list. K souvislému bloku listà màºeme po stisku klávesy Ctrl p²idat listy dalτí. Oznaƒené listy mají prosv╪tlené záloºky.
  44.  
  45. Proudov∞ tisk více stránek
  46. Pot²ebujeme-li v seτitu vytisknout n╪kolik listà, nemusíme jejich tisk zadávat postupn╪. Oznaƒíme listy (viz p²edchozí tip), zadáme p²íkaz Soubor|Tisk a na panelu oznaƒíme poloºku (bude uº pravd╪podobn╪ oznaƒena) "Aktivní listy". Pot²ebujeme-li vytisknout vτechny listy seτitu, zadáme p²íkaz Soubor|Tisk a na panelu oznaƒíme poloºku "Cel∞ seτit". Nemusíme tedy oznaƒovat vτechny listy seτitu.
  47. Nemusíme mít obavy, ºe se budou tisknout i prázdné listy. Tisknou se jen listy, na kter∞ch jsou data, a tiskne se zapln╪ná obdélníková oblast - od buσky A1 aº po pràseƒík poslední zapln╪né buσky sloupce a poslední buσky ²ádku. Jiné oblasti se netisknou.
  48. ¼íslování listà je op╪t pràb╪ºné a konƒí na poslední stran╪, posledním listu se-
  49. τitu.
  50.  
  51. N╪kolik tipà pro Microsoft Word
  52. Opakované kopírování
  53. Kopírování textu a kopírování formátà se navzájem neovlivσují a mohou se pouºít spoleƒn╪ a opakovan╪. Pro kopírování textu vƒetn╪ formátà do schránky pouºijeme kombinaci kláves Ctrl+C,
  54. pro vloºení (kopírování) ze schránky potom klávesov∞ povel Ctrl+V. Pro kopírování formátà pouºijeme kombinaci kláves Ctrl+Shift+C. Klávesovému povelu p²edchází oznaƒení textu, ze kterého se má formátování pouºít. Pro vloºení formátu do oznaƒeného textu potom pouºijeme klávesov∞ povel Ctrl+Shift+V. Ctrl+C a následn╪ Ctrl+V màºeme pouºít opakovan╪, a to bez ohledu na Ctrl+Shift+V.
  55. Ctrl+Shift+C a následn╪ Ctrl+Shift+V màºeme t麠pouºít opakovan╪, a to op╪t bez ohledu na Ctrl+V.
  56.  
  57. Editace v náhledu
  58. Text v náhledu màºeme upravovat.
  59. Po stisku tlaƒítka "Náhled" v panelu nástrojà, zadání p²íkazu Soubor|Náhled nebo stisku kombinace kláves Ctrl+F2 se dokument zobrazí v náhledu p²ed tiskem. Kurzor myτi bude ve tvaru lupy. Klepneme-li nyní myτí v oblasti textu, text se p²iblíºí, nebo naopak oddálí.
  60. Stiskneme-li vτak na panelu nástrojà "Náhled" tlaƒítko "Zv╪tτovací sklo", dojde ke zm╪n╪ kurzoru myτi v oblasti textu na tvar textového kurzoru - svislé ƒáry. Klepnutím myτi umístíme kurzor do textu a màºeme ho upravovat. Nové stisknutí tlaƒítka "Zv╪tτovací sklo" vrátí kurzor myτi na lupu a text màºeme p²iblíºit nebo oddálit. Text màºeme t麠p²iblíºit v∞b╪rem zv╪tτení v políƒku "Lupa" na panelu nástrojà "Náhled". V náhledu se nezobrazují ²ídicí znaky, nebo£ jde o náhled, jak bude dokument vytiτt╪n na tiskárn╪. V náhledu màºeme t麠p²i editaci pouºít kopírování, p²emís£ování, formátování atd.
  61. Daleko v╪tτí oblast v dokumentu vτak uvidíme v celoobrazovkovém zobrazení (Zobrazit|Celá obrazovka), ve kterém lze text t麠upravovat. Znalost zkrácen∞ch klávesov∞ch povelà je p²i tomto zobrazení obzvláτt╪ velkou p²edností.
  62.  
  63. ¼íslování nadpisà
  64. Ve Wordu verze 6 a 7 (95)
  65. P²edpokladem je, ºe nadpisàm p²i²azujeme styly: Nadpis 1, Nadpis 2, Nadpis 3,... Potom màºeme nadpisy oƒíslovat velice snadno. Postavíme textov∞ kurzor na libovoln∞ nadpis a zadáme p²íkaz Formát|¼íslování nadpisà. Zobrazí se panel, na kterém màºeme vybrat jeden ze τesti p²eddefinovan∞ch zpàsobà ƒíslování nadpisà nebo po stisku tlaƒítka "Upravit" ƒíslování nadpisà zm╪nit. Panel, kter∞ se potom zobrazí, je analogick∞ panelu pro úpravu víceúrovσového ƒíslování (p²íkaz Formát|Odráºky a ƒíslování, panel Víceúrovσové a tlaƒítko "Upravit").
  66.  
  67. Ve verzi 97 a 2000
  68. U verze 97 a 2000 je situace s ƒíslováním nadpisà odliτná.
  69. Nadpisy màºeme oƒíslovat v kterémkoli zobrazení, ale v zobrazení osnovy (Zobrazení|Osnova) jsou nejlépe vid╪t. V∞chozí je op╪t p²i²azení stylà nadpisàm podle úrovní, tzn. Nadpis 1, Nadpis 2, Nadpis 3 atd. Pro dopln╪ní ƒíslování nadpisà postavíme textov∞ kurzor na libovoln∞ nadpis, zadáme p²íkaz Formát|Odráºky a ƒíslování a na panelu vybereme kartu "Víceúrovσové". Vybereme vzorek, kter∞ se zdá b∞t pro ƒíslování vhodn∞. Musíme vτak volit jen ty ze spodní ²ady p²edloh nebo p²edlohu, kde je v popisu slovo "Nadpis". Po stisku tlaƒítka "Vlastní" se zobrazí panel, na kterém màºeme pro p²ísluτnou úroveσ nadpisu urƒit styl ƒíslování, ale co je dàleºité, v políƒku "Propojit úroveσ na styl" màºeme urƒit vazbu úrovn╪ víceúrovσového ƒíslování na styl - na obrázku vidíme propojení na styl Nadpis 3.
  70.  
  71. Obnovení odráºek a ƒíslování
  72. Ve verzi 6 a 95 zàstává stále pàvodní nastavení i po úprav╪ provedené po stisku tlaƒítka "Upravit".
  73. Ve verzi 97 a 2000 vybereme p²ísluτnou τablonu, kterou jsme upravili, a stiskneme tlaƒítko "Obnovit". Nastaví se v∞chozí oznaƒení. Tlaƒítko "Obnovit" je aktivní jen po úprav╪ p²eddefinovaného stylu ƒíslování (odráºek).
  74.  
  75. Tisk nadpisu kapitol
  76. Pot²ebujeme-li vytisknout nadpisy kapitol dokumentu, aniº máme vygenerovan∞ obsah, postaƒí, p²epneme-li se do zobrazení osnovy (Zobrazit|Osnova). Vybereme p²ísluτnou úroveσ nadpisà, a potom uº staƒí zadat p²íkaz pro tisk Soubor|Tisk nebo jen stisknout kombinaci kláves Ctrl+P.
  77. Kdyº stiskneme v zobrazení osnovy tlaƒítko "Náhled" nebo zadáme p²íkaz Soubor|Náhled, zobrazí se cel∞ dokument. Stiskneme-li nyní tlaƒítko pro tisk v panelu nástrojà pro náhled nebo zadáme p²íkaz Soubor|Tisk, vytiskne se cel∞ dokument.
  78.  
  79. Zm╪na jména uºivatele poƒítaƒe
  80. Obdrºíte-li po n╪kom poƒítaƒ, zcela urƒit╪ vám nebude vyhovovat, ºe se do záhlaví (zápatí) stránek, ale i v jin∞ch situacích doplσuje jméno pàvodního uºivatele. 
  81. Pomoc je vτak snadná. Ve Wordu zadáme p²íkaz Nástroje|Moºnosti, vybereme kartu "Informace o uºivateli" a v políƒku "Jméno" napíτeme své jméno. Zm╪na se promítne i do Excelu a PowerPointu. Aplikace Office 97 pouºívají spoleƒná data.
  82. Pon╪kud jiná situace je u p²edchozích verzí - zde musíme zm╪nit název v aplikacích postupn╪. Ve Wordu zadáme p²íkaz Nástroje|Moºnosti a zm╪nu provedeme na kart╪ "Uºivatel", v Excelu jde o Nástroje|Moºnosti a kartu "Obecné".
  83. Milan Broº
  84.  
  85. Tipy v JavaScriptu
  86. D²íve neº se pustíme do trikà, nebude na τkodu krátce se zmínit o postavení jazyka JavaScript. Jde o skriptov∞ interpretovan∞ jazyk, kter∞ byl vyvinut firmou Netscape Corporation ve spolupráci se Sun Microsystems. Na rozdíl od Javy nevyºaduje kompilaci a není umíst╪n v samostatném souboru. JavaScript se svou syntaxí sice podobá Jav╪, ale nemá nejsiln╪jτí zbran╪ objektov╪ orientovaného programování - t²ídy a d╪diƒnost. P²íkazy se zapisují p²ímo do HTML souboru v t╪le párové znaƒky <SCRIPT>.
  87. JavaScript také nemá t²ídy a d╪diƒnost. K dispozici je pouze skupina p²edem p²ipraven∞ch rozτi²iteln∞ch objektà. Jedná se tedy o pom╪rn╪ jednoduch∞ prost²edek pro vytvá²ení interaktivních aplikací, kter∞ je v souƒasné dob╪ znaƒn╪ oblíben∞. K vytvo²ení zajímavého programu v JavaScriptu staƒí mít kvalitní HTML editor. Jinak je dobré v╪d╪t, ºe následující triky jsou otestovány v prohlíºeƒích Netscape Communicator 4.x a MS Internet Explorer 3.0x.
  88.  
  89. Komfortní menu
  90. Vytvá²ení a aktualizace nejràzn╪jτích formulá²à, které jsou ²ízeny externími CGI programy (ƒasto ve skriptovém jazyku Perl), pat²í mezi základní úkoly kaºdého správce kvalitního WWW serveru. Prudk∞ nástup JavaScriptu vτak v∞znam CGI programà ƒásteƒn╪ oslabil. S prográmkem v JavaScriptu, kter∞ je p²ímo integrován do HTML, totiº màºeme jednoduτe ovládat tém╪² libovoln∞ formulá². A práv╪ tuto moºnost se snaºí trasparentn╪ demonstrovat následující HTML program JS_MENU.HTM, kter∞ vyuºívá definovan∞ seznam stránek callpage a událost OnClick (poklepání myτí):
  91.  
  92. <HTML>
  93. <HEAD>
  94. <! Program: JS_MENU.HTM // HTML verze 3.2>
  95. <META NAME="Author" CONTENT="Michal Pohorelsky">
  96. <SCRIPT Language = JavaScript>
  97. <!-
  98. function setuparray(num)
  99. { this.length = num;
  100. for (cyklus=1;cyklus <= num; 
  101. cyklus++);
  102. { this[cyklus]=0;}
  103. return this;}
  104.  
  105. function urcenistranky()
  106. { var cyklus;
  107. for (cyklus=1;cyklus <= 10;cyklus++)
  108. if (document.choosetopic.topic
  109. [cyklus-1].checked == true)
  110. { location.href = callpage[cyklus] }}
  111. callpage = new setuparray(10)
  112. callpage[1] = "LINUX.HTM"
  113. callpage[2] = "WARP4.HTM"
  114. callpage[3] = "WARP3.HTM"
  115. callpage[4] = "WIN_NT4.HTM"
  116. callpage[5] = "WIN_98.HTM"
  117. callpage[6] = "BEOS_45.HTM"
  118. callpage[7] = "WIN_95.HTM"
  119. callpage[8] = "WIN_31.HTM"
  120. callpage[9] = "PCDOS_2.HTM"
  121. callpage[10] = "MSDOS_6.HTM"
  122. //->
  123. </SCRIPT>
  124. </HEAD>
  125. <BODY BGCOLOR="#00EE00">
  126. <CENTER><H1><FONT COLOR= 
  127. "#FF0000">Popis operacnich systemu
  128. </FONT></H1>
  129. <P><B>Vyberte si libovolny system:
  130. </B>
  131. <FORM NAME = choosetopic>
  132. <TABLE BORDER=5>
  133. <TR><TD><TABLE BORDER=0>
  134. <TR><TD><INPUT TYPE=RADIO
  135.  NAME = topic>RedHat Linux 5.2
  136. </TD></TR>
  137. <TR><TD><INPUT TYPE=RADIO 
  138. NAME = topic>OS/2 Merlin 4.0
  139. </TD></TR>
  140. <TR><TD><INPUT TYPE=RADIO 
  141. NAME = topic>OS/2 Warp 3.0
  142. </TD></TR>
  143. <TR><TD><INPUT TYPE=RADIO 
  144. NAME = topic>Windows NT 4.0
  145. </TD></TR>
  146. <TR><TD><INPUT TYPE=RADIO NAME = topic>Windows 98
  147. </TD></TR>
  148. <TR><TD><INPUT TYPE=RADIO 
  149. NAME = topic>BeOS 4.5</TD></TR>
  150. <TR><TD><INPUT TYPE=RADIO 
  151. NAME = topic>Windows 95
  152. </TD></TR>
  153. <TR><TD><INPUT TYPE=RADIO
  154. NAME = topic>Windows 3.1
  155. </TD></TR>
  156. <TR><TD><INPUT TYPE=RADIO 
  157. NAME = topic>PC-DOS 2000
  158. </TD></TR>
  159. <TR><TD><INPUT TYPE=RADIO 
  160. NAME = topic>MS-DOS 6.22
  161. </TD></TR>
  162. </TABLE></TD></TR>
  163. <TR><TD><INPUT TYPE=BUTTON 
  164. VALUE = "Hotovo - zobraz informace"
  165. onClick = '{urcenistranky()}'>
  166. </TD></TR>
  167. </TABLE>
  168. </FORM>
  169. </BODY>
  170. </HTML>
  171.  
  172. Samotn∞ program JS_MENU.HTM vτak není pln╪ funkƒní. Musí b∞t doprovázen deseti krátk∞mi prográmky (viz pole callpage) podle následujícího vzoru:
  173.  
  174. <HTML>
  175. <HEAD>
  176. <! Program: WIN_NT4.HTM>
  177. <META NAME="Author" CONTENT="Michal Pohorelsky">
  178. </HEAD>
  179. <BODY BGCLOR="#00DDDD"><CENTER>
  180. <P><FONT COLOR="#FF0000">
  181. <H2>4. Volba z menu</H2><P>
  182. <H1>Popis systemu Windows NT 4.0
  183. </H1></FONT>
  184. </CENTER></BODY>
  185. </HTML>
  186.  
  187. Jednoduch∞ kalkulátor
  188. Aƒkoliv to není na první pohled z²ejmé, JavaScript je skuteƒn╪ univerzálním nástrojem. Moºná vás o tom p²esv╪dƒí p²ekvapiv╪ krátk∞ HTML program JS_CALC.HTM, kter∞ simuluje jednoduchou kalkulaƒku umoºσující provád╪t základní matematické operace. Program op╪t vyuºívá událost OnClick (poklepání myτí):
  189.  
  190. <HTML>
  191. <HEAD>
  192. <! Program: JS_CALC.HTM // HTML verze 3.2>
  193. <META NAME="Author" CONTENT="Michal Pohorelsky">
  194. <SCRIPT Language = JavaScript>
  195. <!-
  196. var pamet;
  197. var functype;
  198. var set;
  199. functype = "0";
  200. set = "0";
  201. function num(thisval)
  202. {var aktualhod;
  203. var cishod;
  204. cishod = eval(thisval);
  205. aktualhod =
  206. eval(document.calcul.itext.value);
  207. if (aktualhod == 0 || set == "1")
  208. {aktualhod = cishod;}
  209. else
  210. {aktualhod = aktualhod*10;
  211. aktualhod = aktualhod+cishod;}
  212. document.calcul.itext.value = aktualhod;
  213. set = "0"}
  214.  
  215. function nula()
  216. {pamet = 0
  217. document.calcul.itext.value = 0;}
  218.  
  219. function func(type)
  220. {if (functype != "0") vypocet();
  221. functype = type
  222. pamet = 
  223. eval(document.calcul.itext.value);
  224. document.calcul.itext.value = 0;}
  225.  
  226. function vypocet()
  227. {var aktualhod;
  228. if (set == "1" || functype == "0") return;
  229. aktualhod = eval(document.calcul.itext.value);
  230. if (functype == "/") pamet = 
  231. pamet/aktualhod;
  232. if (functype == "+") pamet = pamet+aktualhod;
  233. if (functype == "-") pamet = pamet-aktualhod;
  234. if (functype == "x") pamet = pamet*aktualhod;
  235. aktualhod = pamet;
  236. pamet = 0;
  237. functype = "0";
  238. document.calcul.itext.value = aktualhod;
  239. set = "1";}
  240. //->
  241. </SCRIPT>
  242. </HEAD>
  243. <BODY BGCOLOR="#00EE00"><CENTER><P>
  244. <FONT COLOR="#FF0000">
  245. <H1><B>Jednoduchy kalkulator
  246. </B></H1></FONT>
  247. <P><BR><TABLE BORDER=3>
  248. <FORM NAME = calcul>
  249. <TR><TD COLSPAN=5>
  250. <INPUT TYPE=TEXT NAME=itext VALUE="0"
  251. onFocus="{document.
  252. calcul.itext.blur();}"></TD></TR>
  253. <TR><TD><INPUT TYPE=BUTTON NAME=SUBMIT VALUE="7"
  254. onClick="{num(7)}"></TD>
  255. <TD><INPUT TYPE=BUTTON 
  256. VALUE="8" onClick="{num(8)}">
  257. </TD><TD>
  258. <INPUT TYPE=BUTTON 
  259. VALUE="9" onClick="{num(9)}">
  260. </TD><TD>
  261. <INPUT TYPE=BUTTON VALUE="+" onClick="{func('+')}"></TD></TR>
  262. <TR><TD><INPUT TYPE=BUTTON VALUE="4" onClick="{num(4)}">
  263. </TD><TD><INPUT TYPE=BUTTON VALUE="5" onClick="{num(5)}">
  264. </TD><TD>
  265. <INPUT TYPE=BUTTON VALUE="6"
  266. onClick="{num(6)}">
  267. </TD><TD>
  268. <INPUT TYPE=BUTTON VALUE="-" onClick="{func('-')}"></TD></TR>
  269. <TR><TD><INPUT TYPE=BUTTON VALUE="1" onClick="{num(1)}">
  270. </TD><TD>
  271. <INPUT TYPE=BUTTON 
  272. VALUE="2" onClick="{num(2)}">
  273. </TD><TD>
  274. <INPUT TYPE=BUTTON VALUE="3"
  275. onClick="{num(3)}"></TD><TD>
  276. <INPUT TYPE=BUTTON VALUE="/" onClick="{func('/')}"></TD></TR>
  277. <TR><TD><INPUT TYPE=BUTTON VALUE="0" onClick="{num(0)}">
  278. </TD><TD>
  279. <INPUT TYPE=BUTTON VALUE="C" onClick="{nula()}"></TD><TD>
  280. <INPUT TYPE=BUTTON VALUE="=" onClick="{vypocet()}"></TD><TD>
  281. <INPUT TYPE=BUTTON VALUE="x" onClick="{func('x')}"></TD></TR>
  282. </FORM></TABLE></CENTER>
  283. </BODY>
  284. </HTML>
  285.  
  286. P²ímou odpov╪dí Microsoftu na JavaScript je firemní varianta JScript, která by m╪la b∞t zcela kompatibilní. JScript je standardní souƒástí prohlíºeƒe MS Internet Explorer. Na internetu se Microsoft snaºí prosadit také vlastní skriptov∞ jazyk VB Script, kter∞ je podmnoºinou jazyka Visual Basic. VB Script vτak nemá dobré vyhlídky na v∞razn╪jτí úsp╪ch, protoºe ho prohlíºeƒ Netscape Communicator 4.x zcela ignoruje. Jinak je dobré v╪d╪t, ºe následující triky jsou otestovány v prohlíºeƒích Netscape Communicator 4.0x, MS Internet Explorer 3.0x a Netscape Navigator 2.02.
  287.  
  288. Zobrazování informací podle ƒasu
  289. ¼astá aktualizace WWW serveru (nejlépe kaºd∞ den) je jednou ze základních podmínek úsp╪chu. V╪tτina aktualizací je p²itom vázána na vybran∞ ƒasov∞ okamºik (interval). Proto je vºdy nutné provést alespoσ jeden ƒasov∞ test, kter∞ zjistí, zda nadeτel vhodn∞ okamºik. Takov∞ test je samoz²ejm╪ moºné provést mnoha zpàsoby. Jednu z moºností se snaºí demonstrovat následující jednoduch∞ HTML program INFOPCAS.HTM:
  290.  
  291. <HTML>
  292. <HEAD>
  293. <! Program: INFOPCAS.HTM // HTML verze 3.2>
  294. <META NAME=
  295. "Author" CONTENT=
  296. "Michal Pohorelsky">
  297. <TITLE>Zobrazovani informaci podle aktualniho casu</TITLE>
  298. </HEAD>
  299. <BODY>
  300. <SCRIPT Language=JavaScript>
  301. <!-
  302. today=new Date();
  303. hodina=today.getHours();
  304.  
  305. /* Nastaveni barev */
  306. if (hodina < 6 || hodina > 20)
  307. {document.bgColor = "#000000";
  308. document.fgColor = "#FFFFFF";}
  309. else
  310. {document.bgColor = "#00DFEF";
  311. document.fgColor = "#000000";}
  312.  
  313. if (hodina < 12) 
  314. document.write("<H3>Dobre rano,");
  315. if (hodina == 12) 
  316. document.write("<H3>Dobre poledne,");
  317. if (hodina > 12 && hodina < 19) 
  318. document.write("<H3>Dobre 
  319. odpoledne,");
  320. if (hodina > 18) 
  321. document.write("<H3>Dobry vecer,");
  322. document.writeln(" Vitam Vas na sve osobni WEB strance !</H3><BR>");
  323.  
  324. /* Informace o aktualnim prohlizeci */
  325. document.write("<B>Prave pouzivate prohlizec: </B>"
  326. + navigator.appName+"<BR>")
  327. document.write("<B>Verze: </B>" 
  328. + navigator.appVersion+"<BR>")
  329. //->
  330. </SCRIPT>
  331. </BODY>
  332. </HTML>
  333.  
  334. Kvàli v╪tτí srozumitelnosti vloºeného kódu JavaScriptu bych cht╪l p²ipomenout, ºe dvojice znakà "||" v podmínce IF reprezentuje logick∞ OR. Podobná dvojice znakà "&&" reprezentuje logick∞ AND. Pokud znáte jazyk C/C++, tak jste jiº urƒit╪ pochopili, ºe znaky "/*" p²edstavují poƒátek komentá²e.
  335.  
  336. Prohlíºení obrázkà
  337. Rozmanitá práce s grafick∞mi soubory je jedním ze základních prvkà souƒasného internetu. Urƒitá ƒást WWW serverà se p²itom orientuje na zobrazování relativn╪ velkého poƒtu statick∞ch obrázkà (fotografií) nebo grafiky. Vlastní zobrazování je samoz²ejm╪ moºné provád╪t mnoha zpàsoby. Jednou ze vτeobecn╪ pouºívan∞ch moºností je slideshow s pevn╪ stanovenou ƒasovou periodou. Tuto moºnost názorn╪ p²edvádí krátk∞ HTML program SLIDSHOW.HTM, kter∞ periodicky kaºd∞ch 15 sekund zobrazí jeden náhodn╪ vybran∞ obrázek:
  338.  
  339. <HTML>
  340. <HEAD>
  341. <! Program: SLIDSHOW.HTM // HTML verze 3.2>
  342. <META NAME="Author" 
  343. CONTENT="Michal Pohorelsky">
  344. <TITLE>Slideshow s nahodnym poradim zobrazovani</TITLE>
  345. <SCRIPT Language=JavaScript>
  346. <!-
  347. /* Vytvarim prazdne pole */
  348. function setuparray(num)
  349. { this.length = num;
  350. for (cyklus=1;cyklus <= num; 
  351. cyklus++);
  352. { this[cyklus] = 0;}
  353. return this;}
  354.  
  355. /* Definuji pole s nazvy jednotlivych 
  356. obrazku */
  357. slideshow = new setuparray(7);
  358. slideshow[1]="tech01.gif";
  359. slideshow[2]="tech02.gif";
  360. slideshow[3]="tech03.gif";
  361. slideshow[4]="tech04.gif";
  362. slideshow[5]="tech05.gif";
  363. slideshow[6]="tech06.gif";
  364. slideshow[7]="tech07.gif";
  365.  
  366. /* Generuji nahodne cislo */
  367. function random(max)
  368. { today=new Date();
  369. hour=today.getHours();
  370. min=today.getMinutes();
  371. sec=today.getSeconds();
  372. return(((sec) % max)+1);}
  373.  
  374. function display()
  375. { picturenum=random(7);
  376. window.setTimeout
  377. ('location=
  378. "slidshow.htm"', 15000);
  379. document.writeln
  380. ('<CENTER>
  381. <IMG SRC=
  382. '+slideshow[picurenum]+
  383. ' WIDTH=640 
  384. HEIGHT=480>
  385. </CENTER>');
  386. }
  387. //->
  388. </SCRIPT>
  389. </HEAD>
  390. <BODY BGCOLOR="#00CDCD">
  391. <SCRIPT Language=JavaScript>
  392. display();
  393. </SCRIPT>
  394. </BODY>
  395. </HTML>
  396.  
  397. Samotn∞ program SLIDSHOW.HTM vτak není pln╪ funkƒní. Musí b∞t doprovázen sedmi obrázky ve formátu GIF (viz pole slideshow), které budou mít stejné rozm╪ry - 640 x 480 bodà. Pon╪vadº pole slideshow obsahuje pouze sedm prvkà (obrázkà), dochází pom╪rn╪ ƒasto k opakovanému naƒtení stejného obrázku. Pokud by vám to vadilo, staƒí rozτí²it pole alespoσ na 20 prvkà.
  398. Michal Poho²elsk∞
  399.  
  400.