|
laacz tagad
klausās:
Radio NABA
Autora domas ne vienmēr sakrīt ar autora domām. © spectatorIr pagājuši 24 gadi un 7 mēneši un 22 dienas kopš mana mūža laimīgākās dienas
Papildus 3355 maniem pļurkšķiem ir sapļurkstēti 33189 sveši pļurkšķi.
ICQ: #58279153 (very rarely)
MSN:
E-mail:
Mazās pustizlās ikoniņas aiz linkiem (ne visiem) arī šo to nozīmē.
|
|
<br />
<br />
<br />
2004 6. septembris pirmdiena
|
 |
Vakar svinīgi tika noskatīta pēdējā epizode seriāla "24" trešajai sezonai.
Catchy. Spriedze aš līdz pēdējai epizodei. Tiesa, beigas tādas... seriālam tipiskas, bet neamerikāniskas. Pēc springtnes gribējās jau, protams, atslodzi. Filmas veidotājiem, acīmredzami, likās savādāk :) Amerika glābta, visi ļaunie beigti, daļa labo beigta, neviens asaras nelej, izņemot Kīferu.
4th season to come?
Sylviaimports dot com .
|
 |
 |
2004 3. septembris piektdiena
2004 2. septembris ceturtdiena
2004 1. septembris trešdiena
|
 |
Kādu laiku atpakaļ, kad sāku lēnām rakties iekšā un censties saprast, kā un kāpēc dalīt struktūru no prezentācijas, to darīju ar zibošām acīm metodom naučnovo tika s primeņeņijem tikaķeļnavo aparata. Kāpēc? Tāpēc, ka tas bija kas jauns un interesants. Un man patīk pielietot visu jauno un interesanto jomā, kura manai sirsniņai ir vistuvākā - web izstrādē.
Tajā laikā es ij nedomāju, ka tas varētu vienkāršot izstrādi, uzturēšanu un, galu galā, lietošanu. Tagad, kad sāku par to domāt, nonāku pie secinājuma, ka tā nu tas arī ir. Kāpēc?
Daudzi aizvērtām acīm, turot augstu paceltus XHTML burtus ķērc par usability, semantic markup, structure + presenation + behaviout, kā arī daudz citām ne gluži saprotamām, bet tomēr skaistām lietām.
Tajā pašā laikā tiek aizmirsts par elementārāko - man ir viegli, lietotājam ir viegli. Šī pieeja atrisina milzumu problēmu. Sākot ar to, ka paātrina izstrādi un uzturēšanu un beidzot ar to, ka neierobežo lietotāju.
Par to paātrināto izstrādi un uzturēšanu runājot, ir jāmin tomēr viens moments. Ar šo pieeju var atvieglot savu darbu tikai tad, ja zin, kā, kur un ko izmantot. Jā, protams, sākotnēji ir milzums problēmu, ieskaitot savietojamību. Taču, kad pēc kāda laika Tu esi apguvis metodiku, ar kuras palīdzību minētās problēmas var atrisināt, ho-ho-hooo - Tu esi zirgā. Nodalot šos trīs slāņus - struktūra, prezentācija un funkcionalitāte, mēs iegūstam vienu milzīgu bonusu. Lai veiktu izmaiņas vienā no trijiem slāņiem, mums nav jāaiztiek pārējie divi.
Otrs, savukārt, ir lietotājs. Viņam ir pilnīgi vienalga, kāpēc Tava lapa nestrādā vai ne pēc kā neizskatās. Tu jau protams vari pieņemt, ka visiem ir javascript atbalsts. Ka visi redz attēlus. Bet tā nav. Un nestāsti, ka Tevi neinteresē šie desmit-piecpadsmit procenti. No sērijas - pasaki, vai Tu apzināti ignorē šos procentus un es pateikšu, cik pavirši Tu strādā. Dod nabaga lietotājam iespēju redzēt un lietot Tevis izveidoto lapu.
Tas, iespējams, nebūs viegli. Jo ir jāapgūst daudz jaunu lietu. Protams. Bet Tu takš nevēlies iet līdzi laikam un darīt savu darbu labāk, ne? Vai arī tomēr vēlies?
|
 |
 |
|
 |
Ienāca prātā, ka visā visumā turpmāk arī JavaScript funkcionalitāte ir jānodala no struktūras. Pirmām kārtām, tieši tāpat, kā mēs ar link rel piesaistām CSS, mēs pašā lapas kodā nebakstām JavaScript'u. Tas ir nepieciešams tikai tiem, kuru pārlūki atbalsta šo technoloģiju. Pārējiem tie ir lieki baiteļi.
<script type="text/javascript" src="script.js">
Bez structure un presentation ir vēl arī behavior
Otrām kārtām, bāzt lapas elementiem klāt notikumu apstrādāšanas funkcijas arī nav labi. Tieši tas pats iemesls, kas pirmāmkārtām - lietotājiem, kuriem nav JS atbalsta, šī lieta nav nepieciešama. Kā arī - dokumenta struktūrā notikumu apstrādes metodēm nav vietas. Tas ir t.s. behavior slānis.
Tāpēc, teiksim, lai atvērtu izlēcošo pēkšņlogu (šis, protams, nav oficiāls letiņiskojums ;) popupu), mums ir mazliet jāpaņemās, nodalot šo behavir no struktūras.
Par popupu usability runāsim citreiz, labi? Šoreiz tas ir vienkārši piemērs.
Sākumā mums bija šis:
<a href="/order/1234" onclick="wopen('1234'); return(false);"...
Tagadiņās mēs uzrakstām apmēram ko sekojošu:
<a href="/order/1234" class="popup" ...
Mums nu ir glauns un strukturāli vairāk vai mazāk pieņemams kods. Un ko tālāk? Kā likt šim linkam vērties popupā? Sekojošā funkcija paņem visus elementus, kuru klase ir popup un pievieno tiem eventu onclick, kura izpildes gadījienā mums izlec gaumīgs popup logs ;)
// Šī funkcija ir nepieciešama tālab, ka Tev var būt vēl
// arī citi skripti, kuriem nepieciešams izpildīties, teiksim,
// window.onLoad gadījienā. Tāpēc mēs izmantojam šo funkciju,
// nevis lai aizvietotu esošu handleri ar savējo, bet gan
// lai pievienotu pēc esošā savējo :)
function addEvent(obj, evType, fn){
if (obj.addEventListener){
obj.addEventListener(evType, fn, true);
return true;
} else if (obj.attachEvent){
var r = obj.attachEvent('on'+evType, fn);
return r;
} else {
return false;
}
}
// Funkcija, kura tiek izsaukta, kad ielādējas dokuments
// un visiem a elementiem ar klasi 'popup' piesaista
// onClick eventa apstrādes funkciju, kura atver popup
// loģeli
function initPopups() {
// Dabonam visus elementus 'a'
var elems = document.getElementsByTagName('a');
// Braucam cauri dabūto elementu masīvam
for (var i = 0; i < elems.length; i++) {
// Ja nu mums elementa klase ir 'popup'
if (elems[i].className == 'popup') {
// Te mēs neizmantojam addEvent, jo negribam,
// lai linki dara vēl kaut ko citu, kā tikai šo.
elems[i].onclick = function() {
// Atveram izlecošo pēkšņlogu
var popup = window.open(this.href,
'popup',
'toolbars=no,scrollbars=no,' +
'width=300,height=200,' +
'resizable=yes');
// Nodrošinam, lai pārlūks pēc loga atvēršanas
// nedodas tālāk (uz href'ā norādīto adresi).
return(false);
}
}
}
}
// Piebiedrojam esošajiem event handleriem
// (ja tādi ir) savējo
addEvent(window, 'load', initPopups);
Tas vairāk vai mazāk ir vēlamais virziens un nebūt ne vēlamā realizācija. 100% nodalīt struktūru, prezentāciju un prezentācijas procesu, diemžēl, nav iespējams. Vienmēr paliks kaut kas, kas visus trīs saistīs kopā.
|
 |
 |
2004 31. augusts otrdiena
|