Hardware

PC Hardware 129 Technologie 233 ThinkPad 16

JavaScript pro použitelnější a přístupnější web

Předmluva k JavaScriptu

JavaScript

Jsou web-designéři, co se JavaScriptu "štítí". Jaký k tomu mají důvod? Zejména jeho neznalost a nepochopení principu správného použití JavaScriptu. Z jejich strany.

Ano, JavaScript si získal své špatné jméno jeho zneužíváním pro desítky otevíraných pop-up oken v Internet Exploreru, pro bezcenné animace, či rolující text ve status baru, který jen znesnadňuje čtení webu.

To ale není problém technologie, tedy, JavaScriptu. Šílené věci se dají udělat i s obyčejným (X)HTML. Je proto špatné? Nebo s animovanými GIFy! Je GIF proto špatný? Rozhodně ne.

Nezatracujme technologii kvůli pár taky-tvůrcům bez grafického cítění (pokud nechceme pod tímto cítěním chápat desítky blikajících neonových světel jako krásnou a užitečnou věc).

Lepší web s JavaScriptem

O tom, že JavaScript může učinit web značně přehlednější, použitelnější (a tudíž i, v tomto případě, přístupnější), jsem psal již v článku Přístupná navigace webu pomocí JavaScriptu. Asi 2 týdny nato publikoval podobný článek i A List Apart, pod podivným názvem Let Them Eat Cake.

JavaScriptem je možno přistupovat k DOM modelu stránky. Dynamicky s ní pracovat. Zajímavý pro nás je zejména přístup k atributům tříd v CSS. Že nevíte, jak na to? Osobně používám dokumentaci na comptechdoc.com, která uvádí, přehledně, jak ke kterým atributům CSS přistupovat z JavaScriptu.

Na tomto webu používám JavaScript pro selektivní zobrazování částí webu. Proč? Na tomto webu je dostupná řada statistik, lokálních hledání, google hledání, blogrollů, a dalších věcí, které, v "rozbalené podobě", by činili web značně nepřehledným. Řešení jsou dvě. Buď vše smazat, a nechat tu jen články, v primitivní podobě, anebo, za pomocí JavaScriptu, zobrazovat jen uživatelem vyžádané věci. Viz Přístupná navigace webu pomocí JavaScriptu.

Celý článek 0 komentářů

Jsem EUROOPTIMISTA!

freedom!

V roce 1989, v roce takzvané Sametové revoluce, jsem byl ve třetím ročníku na Gymnáziu. Ve svých 17 letech jsem nosil hrdě na klopě košile českou trikolóru, a byl jsem tak nadšený. Někteří post-komunisté na mě divně koukali. Nebylo moc lidí, co by se ke svobodě hlásili tak hrdě jako já. Masám svoboda nic neříká. Intelektuálům (v tom dobrém smyslu), umělcům, ano.

Průměrní lidé svobodu nechápou. Nechápou, co to je. V tomto miluji Ameriku. Průměrný Američan chápe mnohem lépe, jak je svoboda důležitá.

Vychováván v přísně proti-komunistické rodině a přísně anti-totalitní rodině, jsem nemohl uvěřit, že totalitní režim, svobodu potlačující, konečně i u nás skončil!

Celý článek 0 komentářů

Rozšíření EU - zítra budu slavit!

EU

Prvního května se většina východní a západní Evropy dočká dlouho očekávaného členství v EU. K Evropské unii se připojuje 10 nových zemí – Česká republika, Estonsko, Kypr, Lotyšsko, Litva, Maďarsko, Malta, Polsko, Slovenská republika a Slovinsko.

Někteří lidé budou nadávat na "zdražení" (nejen SW), které ovšem není zapříčiněno Evroskou unií samotnou, ale naší socialistickou vládou a parlamentem. Vládou, která tuto zemi nehorázně zadlužila. Vládou, která se nám bude smát, se svými nadmutými konty.

Přestože se EU chová v řadě případů také jako místní socialistický moloch, mám z členství v EU radost. Je to cesta k volnému (relativně) trhu, konkurenci, a, hlavně, pohybu pracovních sil (zatím ovšem pro občany ČR ne až zcela volnému...).

Mimochodem, uvažujete o práci v Evropské unii? A pokud ano, uveďte prosím do komentářů v jakém oboru a časovém horizontu 🙂

0 komentářů

Dnes je zavirovaný den!

Dnes je zavirovaný den. Potom, co mi přišlo emailem alespoň 5 fantastických "screensaverů", mi přišel další, docela zábavný email, no, přečtěte si to sami:

The original message was ...
from nat-ktk.miramo.cz [195.146.124.16]
----- The following addresses had 
permanent fatal errors -----
<feedback@yoogee.com>
(reason: 554 5.7.1 rejection: found virus SoBig)
----- Transcript of session follows -----
... while talking to mail.avenuemedia.com.:
>>> DATA
<<< 
554 5.7.1 rejection: found virus SoBig
554 5.0.0 Service unavailable

Podle toho to vypadá, že jsem jakoby posílal email, který měl v sobě virus. Jasně že ne. Jak nat-ktk.miramo.cz, tak feedback@yoogee.com je pochopitelně adresa vytažená z logů člověka, co skutečně vir má.

Pointa? V příloze je soubor s názvem details.com 😉 Zřejmě bych jej měl spustit, ne? Abych se dozvěděl, v čem mám problém! Jako další milióny chytrých lidí, co to udělali přede mnou...

0 komentářů

MX700 - hlodavec v domě po pár dnech

mx700

Před pár dny jsem psal o koupi nové bezdrátové (RF) myšky, Logitech MX™700. Po pár dnech s ní mám jen pozitivní zkušenosti. Nahradila optickou, kabelovou, myš Microsoftí. Velice úspěšně.

Takže, druhé dojmy z hlodavce:

  • Oproti myši s kabelem se mi, zprvu, zdála MX™700 těžká. Za 24 hodin jsem si zvyknul, nastavil si vyšší akceleraci a rychlost pohybu (Control Panel Windows), a zjistil, že je možno extrémně přesně kontrolovat pohyby kurzoru po obrazovce, i když pohnu myší jen o pár milimetrů.
  • Výdrž akumulátorků je skvělá. I po 3 dnech prakticky nepřetržité práce bez nabíjení je myška svěží. Na stole leží, zatím nevyužitý, stojánek, s nabíječkou. Myš do něj stačí velice jednoduše položit, a nabíjí se.
  • Včera jsem dělal celou noc na jedné dost složité retuši ve Photoshopu. Pro kamaráda. Amputoval jsem Harapesovi hlavu a ruku, doplnil je z jiné fotky, vyhladil vrásky, doplnil stíny pod rukou, odlesky manžet, stíny od kravaty, a řadu dalších věcí, na souboru o velikosti 80MB. Přesnost této myšky je dokonalá. Pokročilé retuše ve Photoshopu jsem vždy nenáviděl. Nicméně, přesnost a snadnost používání MX™700 je excelentní!
  • Oblíbil jsem si, kromě kolečka, na rolování, rovněž 2 tlačítka na skok o celou stránku zpět / dále. Dobré je i tlačítko na přepínání aplikací.
  • Reakce na pohyby myši je okamžitá. Lepší, subjektivně, (jak je to možné??) než u kabelu.
  • Absence kabelu je skvělá. Právě u té práce ve Photoshopu se to dobře pozná. Kabel tam občas velice vadí, překáží, kvůli kabelu uhnete často o jeden pixel, či více, a... ono je to poznat. S touto myší ne! Je přesná. Logitech MX engine a RF bezdrát je skvělý.

Nějaké negativa?

  • Ne 🙂
0 komentářů

Regulární výrazy v PHP - online

Na bitesizeinc.net je dostupný, dost užitečný, online checker regulárních výrazů v PHP, včetně cca 30 nejčastějších výrazů před-definovaných.

Jak to funguje? Do levého okna napíšete text, do pravého regexp, stisknete Test a... zobrazí se Vám, která část textu je regexpem vybrána. Dost užitečné!

0 komentářů

Internet je jedna velká, zprůměrovaná, vesnice!

NYC

Jsem městský člověk. Tedy, velkoměstský člověk. Jako ryba ve vodě se cítím v 15-ti miliónovém New Yorku, 20-ti miliónovém Bangkoku nebo Mexico City. Miliónová Praha se ještě dá snést. Chvíli. V Brně bych umřel. Hned.

Proč? Nemám rád vesnice. V typické vesnici člověk musí dělat řadu ústupků. Dělat si, co on chce, může jen pod "kontrolou", tedy, aniž by řada babiček postávajících kolem, či puberťáků pobíhajících kolem, jeho konání nejapně a nechápavě nekomentovala a nehodnotila.

Lidé vesničtí se zajímají o to, co dělají ostatní, znají jen jednu "pravdu", zprůměrovanou pravdu, a komentují, a hodnotí. Nechápu tuto zálibu. Jsou to lidé, co nemají co na práci, nebo nemají dostatek intelektu na to, aby se zajímali sami o sebe (o své vzdělání, práci, zábavu, požitek), a tak ztrácí svůj čas tím, že... hodnotí ostatní.

Celý článek 0 komentářů

Patrick Zandl, marigold.cz a Opera

WiFi

Patrick Zandl, marigold.cz, si na základě mého článku o Opeře tuto stáhnul, pár minut ji používal, zjistil, že marigold.cz je tam totálně rozhozen, tak ji zase smazal. Uhuh.

Marigold.cz je totálně nevalidní web, ale o to zde nejde! Tento problém není, typicky, Operní, ale spíše chybějící, či přebývající, DIV.

Tak jsem se na celou věc podíval a... je to tak. 🙂

Toto je starý kód:

....
</FORM>
</div> <!-- tady tento div smazeme -->
<form action="/zpracuj_hlasovani.php3" method="post">
....
<a href="#" onclick="window.open('/hlasovani_vysledky.html','Hlasovani','width=400,
 height=500'); return  false;"> zobrazit výsledky</a>
</form>
</p>
</div> 
.... 

A toto je upravený kód:

.... 
</FORM>
<form action="/zpracuj_hlasovani.php3" method="post">
.... 
<a href="#" onclick="window.open('/hlasovani_vysledky.html','Hlasovani','width=400,
 height=500'); return  false;">  zobrazit výsledky</a>
</p> <!-- tady presuneme p do formu, predtim bylo za nim -->
</div> <!-- tady jeden novy div pridame -->
</form>
</div> 
.... 

To je celé! Není to problém Opery, ale, pokud uzavřu "obsah" webu dříve než má skončit, tak, Opera jej skutečně uzavře. IE si myslí, vzhledem k tomu, že ještě něco následuje, že raději tento uzavírací DIV bude ignorovat, protože to tam asi někdo, jen tak, zapomněl. Hm. Nemám rád browsery, co si vymýšlejí. Ono to je chvíli dobře, ale, co když Patrick zítra napíše nějaký článek, a už to bude pro IE špatně?

Na marigold.cz chodí dost podstatná část lidí s ne-IE browsery (tedy, možná ne, kvůli "vylučovacímu efektu", o kterém moc pěkně psal Yuhů).

Co z toho tedy plyne? Validita sama o sobě nemá smysl (pro praktické použití webu). Validní není ani google.com, ani amazon.com, ani yahoo.com. Nicméně, jak jsem o tom psal před pár dny, je to takový dobrý debugger pro web-designéra, aby on odhalil svoje chyby. Ono, pokud děláte validní web, a něco Vám nefunguje jak má, tak to v 5 chybách snadno najdete. V 300 chybách už to je dost obtížné... A jinak než validátorem se k chybě budete propracovávat hodně těžko.

0 komentářů

Jak automaticky na SEO permalinky (URI) článků?

Víťa Marabu se měl ptal po ICQ, jak na SEO odkazy. Nucleus CMS má plně automatické generování SEO odkazů článků, a starají se o to 2 jednoduché funkce.

Konkrétní postup:

function iso2ascii($s){
 $iso="áčďéěíĺľňóřšťúůýžäëöüÁČĎÉĚÍĹĽŇÓŘŠŤÚŮÝŽÄËÖÜ";
 $asc="acdeeillnorstuuyzaeouACDEEILLNORSTUUYZAEOU";
 return strtr($s,$iso,$asc); }
function _makefancyTitle($title) {
 $title = strtolower(iso2ascii(strip_tags(trim($title))));
 preg_match_all('/[a-zA-Z0-9]+/', $title, $nt);
 return strtolower(implode('-', $nt[0]));
}

PS: Víťa potřeboval konverzi i azbuky, není problém si funkci iso2ascii() uzpůsobit a doplnit i o azbuku 😉

0 komentářů