Interakce ve Flashi v ramci videa

Jak spustit Flash animaci až video skončí? Nebo jak spustit nějaké doplňkové animace v závoslosti na tom v jaké části videa se právě nacházíme? K tomu nám pomohou tzv. Cue points (Startovací body). Při exportu videa nebo jednoduše v Inspektoru komponent si naeditujeme jednotlivé Cue points – vložíme jim názvy a čas kdy přesně se spustí. Poté dáme do framu kde se nám video přehrává jednoduchý script:

var introListener:Object = new Object();
introListener.cuePoint = function(eventObject:Object):Void {
if (eventObject.info.name == “End2”) {
gotoAndPlay(2);
}
};
myFLV.addEventListener(“cuePoint”, introListener);
stop();

Kde:
název objektu videa: myFLV
název daného Cue pointu: End2

no a pak to bude krasne fungovat :-))) Pokud chcete více detailů, můžete si přečíst thread na fóru na Flashkitu, kde se to rozebírá detailněji.

seřazení položek přetažením – AJAX a PHP

Skvělý a funkční návod na seřazení položek databáze přetažením (drag and drop) je zde.

Jenom několik poznámek pro adaptaci přetáhnutí pro vlastní potřeby: když se přejmenuje processor.php na jiný název, tak to nefunguje. Pokud bychom chtěli dát do ID položek seznamu pouze číslo, tak to taky nebude fungovat.

Jak zaškrtnout skupinu checkboxu?

Na webu je spousta návodů jak zaškrtnout všechny checkboxy ve formuláři, ale pokud chcete zaškrtnout pouze nějakou skupinku, ještě k tomu každou jinak pojmenovanou a ještě k tomu když je jich pokaždý jiné množství, je to trošku oříšek. Naštěstí řešení existuje. Zdrojem je diskuse na codingforums.com a řešení je níže:

<script type="text/javascript">
function checkAll(checkbox, theCommonNodeName) {
theCommonNodeName = theCommonNodeName.toLowerCase();
var theCommonNode = checkbox.parentNode;
while(theCommonNode.nodeName.toLowerCase() != theCommonNodeName && theCommonNode != document) {
theCommonNode = theCommonNode.parentNode;
}

if(theCommonNode.nodeName.toLowerCase() != theCommonNodeName) {
alert("Common parent node could not be found");
return;
}

var inputs = theCommonNode.getElementsByTagName("input");
for(var i=0; inputs[i]; i++) {
if(inputs[i].type == "checkbox") {
inputs[i].checked = checkbox.checked;
}
}
}
</script>
</head>

<body>
<h1>Test 1</h1>
<form name="frmTest1">
Check all in this form:<input type="checkbox" name="chkAll" onclick="checkAll(this, ‘form’);">
<br><br>
checkbox1:<input type="checkbox" name="chk1"><br>
checkbox2:<input type="checkbox" name="chk2"><br>
checkbox3:<input type="checkbox" name="chk3"><br>
</form>
<hr>

<h1>Test 2</h1>
<form name="frmTest2">
<table border="1" cellspacing="1" cellpadding="2">
<tr><td>Check all in this table:<input type="checkbox" name="chkAll" onclick="checkAll(this, ‘table’);"></td></tr>
<tr><td>checkbox1:<input type="checkbox" name="chk1"></td></tr>
<tr><td>checkbox2:<input type="checkbox" name="chk2"></td></tr>
<tr><td>checkbox3:<input type="checkbox" name="chk3"></td></tr>
</table>
</form>
<hr>

<h1>Test 3</h1>
<form name="frmTest3">
<table border="1" cellspacing="1" cellpadding="2">
<tr>
<td>Check all in this row:<input type="checkbox" name="chkAll" onclick="checkAll(this, ‘tr’);"></td>
<td>checkbox1:<input type="checkbox" name="chk1"></td>
<td>checkbox2:<input type="checkbox" name="chk2"></td>
<td>checkbox3:<input type="checkbox" name="chk3"></td>
</tr>
<tr>
<td>Check all in this row:<input type="checkbox" name="chkAll" onclick="checkAll(this, ‘tr’);"></td>
<td>checkbox4:<input type="checkbox" name="chk4"></td>
<td>checkbox5:<input type="checkbox" name="chk5"></td>
<td>checkbox6:<input type="checkbox" name="chk6"></td>
</tr>
</table>
</form>
</body>
</html>
The code should be pretty self-explanatory, the onclick you add to your "check all" checkbox should be:onclick="checkAll(this, ‘the common parent html tag for your checkboxes’);"
eg:
onclick="checkAll(this, ‘tr’);"
or:
onclick="checkAll(this, ‘div’);"
or:
onclick="checkAll(this, ‘table’);"
etc etc

Několik pěkných AJAX aplikací

Vybíráme několik čerstvých i lehce zašlých AJAX aplikací či kódů pro budoucí použití:
AJAX Modal Box – je nástroj, který způsobí ztmavení plochy prohlížeče a na tomto ztmaveném pozadí zobrazí nějakou zprávu či webovou stránku nebo její část
Lightwindow – variace na populární prohlížeč respektive způsob prohlížení obrázků založených taktéž na modal window. Lightwindow navíc umožňuje zobrazovat jak videa, tak obrázky, tak i dokonce obsah cizích stránek
– pro milovníky komplexnějších řešení je zde jQuery
– a pro milovníky mnoha šikovných nástrojů seznam 80 ze zajímavějších

Jak použít HTC TyTn II Kaiser jako modem pro připo

Jak jsem již psal v minulém příspěvku, když se přestěhujete, nejste připojeni k internetu. A když nejste připojeni k internetu, dost špatně se vám hledají návody, jak se připojit, i když náhodou vlastníte "chytrý telefon" je možné, že vy nejste dostatečně chytří na to, abyste se pomocí něj k intenretu připojili. A když už se snažíte být chytřejší, existují nějaké stránky, které vám toto znesnadní (viz oficiální stránka výrobce chytrýách telefonů HTC, která se v těchto telefonech nedá prohlížet.

Původně jsem si myslel, že když můj HTC TyTn II připojím k počítači jako USB, tak na mne někde vyskočí něco jako ikonka připojení a budu se moci připojit. Bohužel, moje PC odmítalo jakoukoliv možnost jenom nalezení takovéto cesty. Až po chvíli bádání jsem přišel na to, že stačí zapnout ne mobilu funkci Sdílení internetu a pomocí ní zapnout toto sdílení. Bohužel, tato funkce je relativně nesmyslně umístěna v Programech namísto v Nastavení, takže běžný člověk který hledá boty v botníku ji nenajde.

Takže – pro použití HTC jako modemu připojeného přes USB – připojit mobil přes USB, jít do Programy/Sdílení internetu – zapnout sdílení – a jste připojeni.

HTC ma web na co?

Jak se připojit na internet se dozvíte snadno – stačí to vyhledat na internetu. Bohužel, když nejste připojeni, tak nemůžete hledat, žeano. V otázce jak udělat z HTC TyTn II modem na Windows 7 jsem selhal. Nápovědu jsem hledal brouzdáním po webu pomocí telefonu. Několik cest vedlo na web HTC, kde prý měly vyjít aktualizované drivery pro Windows Vista (takže i pro W7). K svému nemilému překvapení jsem zjistil, že HTC – výrobce smart telefonů má web při prohlížení v telefonu NAPROSTO NEPOUŽITELNÝ!! A to ne, že by byl rozhozený, je prostě nečitelný a k ničemu tedy. To by si zasloužilo minimálně kyselou prd3l.

Flash CS4 – maximální počet otevřených knihoven

Flash CS4 mi začal při otevření knihovny, že byl dosažen maximální počet knihoven, který je 10. Pokusil jsem se knihovnu zavřít a otevřít. Při otevření se začalo zobrazovat spousta okének s knihovnami, ale všechny obsahovaly pouze aktuálně otevřené dvě knihovny. Když jsem všechny zavřel, problém přetrvával. Pomohlo až vyresetování Workspace, tedy menu Okno / Pracovní plocha / Obnovit.

Vysoce návykové Windows 7?

Když nám v Microsoftu při předávání Windows 7 Release Candidate (CD s "testovací" verzí nového operačního systému Windows 7, následovníkem Windows Vista) říkali že se jedná o návykový operační systém, trošku jsem se ušklíbl. Po včerejší instalaci je však začínám podezřívat, že měli pravdu. Pravděpodobně velká část mého nadšení pramení i z toho, že jsem upgradoval počítač a přešel na Windows 7 přímo z dlouholetého používání Windows XP, nicméně …  Velmi intuitivní ovládání, rychlé, stabilní, automatické, ale zároveň s dostatečným ponecháním zvyků, vychytávek a možností nastavení tzv. "advanced" uživatelů. Dolní panel s ikonami lehce ála Mac OS vylepšený o mouseover živé náhledy je asi nejlepší vychytávkou. Vůbec hodně věcí se přesunulo do MouseOver funkce, takže počet namáhavých kliknutí se zmenšil. Zatím tedy první dojem maximálně pozitivní.

Pěkně funkční i rychlý je i IE8, jehož rychlost a nové funkce si zaslouží speciální pochvalu. Dokonce jsem si ponechal jako defaultní vyhledávač pro otestování i Bing, uvidíme co přinese.

Výpis začátku odstavce v PHP

Když zobrazujete články na začátku nějakého webu, většinou chcete zobrazit pouze začátek článku na HomePage a celý text pak chcete zobrazit až v detailu článku. V PHP jsou dvě možnosti, jak text zkrátit:

1 – Zkrácení omezením počtu znaků můžeme zrealizovat pomocí příkazů:
         //vypiseme jenom prvnich X znaku
        $pocet_znaku=100;

        $text_final=subStr($text,0,$pocet_znaku);
Funguje to pěkně, ale můžeme se dostat do potíží, když například v proměnné $text máme nějaké speciální znaky, zejména tagy nebo znaky nahrazující diakritiku. Tak nám může náš milý zkrácený text rozhodit celý layout. Proto je jako lepší řešení

2 – Zkrácení omezením počtu slov. To je už náročnější, protože je třeba vydefinovat nejprve co je to slovo. Pokud si to zjednodušíme tak, že slovo definujeme jako skupinku znaků od ostatních oddělených mezerami, můžeme proměnnou $text rozdělit do pole jehož oddělovátky jsou mezery, vybrat pouze prvních X záznamů pole a ty poté opět oddělené mezerami sloučit do finální proměnné. Takže by to vypadalo takto:
         //vypiseme jenom prvnich X slov
          $slov = 20; 
          $slova = explode(‘ ‘, $text); 
          $slova = array_slice($slova, 0, $slov);
          $text_final = implode(‘ ‘, $slova);