javascript:
Thursday, January 11th, 2007Šiam įrašui sukūriau naują kategoriją: “blogis”. Neapsigaukite: blogis ne programavimo kalba, o protokolas, tiksliau pseudo protokolas, nes oficialiai protokolo javascript: nėra.
Niekada, niekada nuorodose nenaudokite href="javascript:".
Vienas labiausiai erzinančių dalykų, kai bendaršydamas viduriniu pelės mygtuku/ratuku sumaigai dėmesį atkreipusias nuorodas – jos atsidaro naujose kortelėse (tab’uose).
Eini skaityti ir randi tik tuščią langą ir adreso eilutėje besipuikuojantį “javascript:”.
Nenoriu dabar išsiplėsti apie naujų langų atidarymo pliusus ir minusus, bet jei jums laaaabai reikia naujo lango, padarykite civilizuotai. href attribute turi būti nuoroda į galutinį dokumentą: ar tai būtų didesnio formato paveikslėlis rodomas paspaudus ant sumažintos versijos, ar formos lauko aprašymas, rodomas iššokančiame lange paspaudus nuorodą “pagalba”.
Kai nuoroda veda tiesiog į dokumentą, niekas nesugriūva:
- Nuorodos veikia net kai naršyklė nepalaiko Javascript arba tas palaikymas išjungtas.
- Paieškos sistemos sugebės turinį rasti ir suindeksuoti.
- Aš ir toliau galėsiu spragsėti vidurinį pelės mygtuką, o rezultatas neprivers sakyti kelių negražių žodžių.
Visišku blogiu javascript: pavadinti negaliu, nes, nors nuorodose jam vietos nėra, bet kai kur šis pseudo protokolas praverčia. Kalbu apie bookmarklets.
Va šis
man iš karto pasako, kiek lentelių yra panaudota tinklalapyje. Jis neveiks, jei puslapis rėmeliuose (frames), bet tokiu atveju lentelių skaičiuoti ir nebereikia…
javascript:(function(){
alert(document.getElementsByTagName('table').length)
})();
Užvakar visai netyčia pakliuvau į vienos lietuviškos kompanijos tinklalapį, kuriame visa navigacija suregzta būtent su tuo nelemtu javascript:. Suregzta ne bet kaip, o su fantazija, nes funkcija, kuri turi rodyti kažkokį puslapį realizuota window.content.location = 'somepage.html' motyvais. Trys skirtingos nuorodos – trys skirtingos funkcijos.
O firma tikrai ne nauja, bet kažkaip buvau ją pamiršęs. Javascript mano naršyklėje, lamei, veikia, tai panaršiau. Nuostabūs tekstai, nežinau, ką jie rūkė juos rašydami, bet, pasak Woody Alleno, verčiau tegul nebando to vežti per muitinę. Tiek daug buzzword’ų ir stantrumpų ir taip mažai prasmės vienoj vietoj senokai neteko matyti. Akivaizdu, kad šios knygos jie neskaitė (labai gera knyga, rekomenduoju). O gal aš tiesiog per kvailas suprasti tokius dalykus kaip “We are creating innovation because of innovation”.
Žinote ką, vaikinai, jei tokia navigacija yra inovacijos pavyzdys, tai grabe aš mačiau tokią inovaciją.