Dziś miałem okazję popodziwiać co to znaczy prawdziwa burza w okolicach ulicy Żeromskiego w Łodzi... Powiem szczerze - ja chyba mieszkam w jakiejś dziwnej strefie, znajomi z innych rejonów miasta opowiadają o oberwaniach chmury, a u mnie co najwyżej trochę popada i pogrzmi... No a właśnie na Żeromskiego widziałem czym jest porządna burza - dosłownie błysk za błyskiem i do tego grad sporych rozmiarów... Pobliskie skrzyżowanie wypełniło się wodą błyskawicznie. Gdy wracałem do domu aleja Politechniki w okolicach elektrociepłowni stanowiła jeden wielki staw - samochody na dość długim odcinku musiały jechać po chodniku bo "kałuża" była tak głęboka, że z pewnością by spowodowała zalanie instalacji elektrycznej - zresztą mijałem takiego nieszczęśnika w swoich okolicach (ja miałem szczęście jechać samochodem napędzanym diesel'em więc ryzyko zalania instalacji nie wchodziło w grę, za to trochę ucierpiały hamulce ;) ).

Jak patrzę na niektóre fotki na portalach to naprawdę wygląda to katastrofalnie i pomyśleć, że niektórzy jeszcze nie zdążyli posprzątać po wczorajszej nawałnicy (paru znajomych mówiło, że ich zalało)...

Swoją drogą to nie pamiętam takiego okresu żeby burze występowały kilka razy po kilka dni z rzędu... I do tego jeszcze tak obfite opady i grad... W sumie nie wiem co lepsze - susza czy te opady...

Mootools 1.11

13 czerwca, 2007

Ostatnio jestem lekko zawalony pracą i prawie przeoczyłem pojawienie się mootools 1.11 - w sumie coś o nim słyszałem kilka dni temu na forum serwisu gavick.com, ale szczerze mówiąc myślałem, że user wcisnął za dużo razy "1" ;) Zmiany jak się pewnie domyślacie są kosmetyczne (całe szczęście :P ), a ich listę macie pod tym adresem. Jak już o mootools piszę, to od razu mała informacja - póki co zbytnio nie wiem kiedy opublikuję część kursu o pliku element.selectors.js, bo nie mam zbytnio czasu - mam już jakieś przykłady naszykowane i nawet 1/3 wpisu leży gotowa na Google docs, ale ciągle ten brak czasu :/ Po cichu liczę na to, że którejś nocy uda mi się ukończyć ten wpis (a może i kolejne, bo pliki z grupy Element są mało obszerne poza Element.event, ale znowu ten plik to przeróbka pliku Event.js z mootools 1.0 więc mam większość już napisaną...). No nic pozostaje troszkę poczekać ;)

Tak swoją drogą - przez przypadek odkryłem, że strona mootools.net bazuje na frameworku PHP CodeIgniter (mój ulubiony :D) -> dowód. Jeszcze bardziej ich lubię ;D No chyba, że zerżnęli wygląd stron błędu 404, ale wątpię ;)

A już myślałem, że nic mnie dziś nie rozbawi :D Odpalam Firefoksa i widzę, że nowy mail w skrzynce Gmail jest. Pierwsze zdziwienie - to powiadomienie o komentarzu do mojego starego bloga O.o Ale jak zobaczyłem treść to po prostu wymiękłem :D Oryginał macie tutaj: Link do wspomnianego komentarza (komcia ?) A dla bardziej leniwych cytat :

Hej!Mam na imię Paulina.Mojego bloga podałam.Mój wiek co roku się zmienia.Dla mnie ten blog na 10 ma tylko 4 :( Niestety ale mi się nie podoba :cry: No ale ja zapraszam także na moją stronke:www.luksia.przyklej.pl dziekuję i do widzenia :mrgreen:

No z pewnością głupi ten mój były blog bo piszę o zaokrąglaniu rogów za pomocą bibliotek JavaScript, a nie o wyczesanych wierszykach na Wielkanoc i swoich marzeniach apropo "komciów" pod wpisem xD Zaczynam się bać :D Dzieci Neo wyszły poza blogi onetu i rozpoczynają atak na niewinne Wordpressy ;]

Mootools 1.1 - String.js

10 czerwca, 2007

Plik string.js to ostatni składnik grupy Native frameworka mootools. Służy do operowania na ciągach znaków i ma też trochę wspólnego z poznanymi już metodami pliku number.js . Mianowicie chodzi mi o metody toInt i toFloat - obie znajdowały się pliku number.js i znajdują się także w pliku string.js - ponieważ ich działanie zostało już wcześniej omówione, nie będę ich tu opisywał i zajmę się pozostałymi 10 metodami pliku string.js . Dodatkowo wspomnę krótko o wyrażeniach regularnych w JavaScript, ponieważ wiedza ta przyda się w wypadku tegoż pliku... Ponadto poprawimy troszkę funkcjonalność mootools nowymi funkcjami tak by uzupełnić małe braki w kodzie ;) ...

Czytaj dalej...

Mootools 1.1 - Number.js

09 czerwca, 2007

Plik number.js to jeden z mniej rozbudowanych składników frameworka mootools - zawiera 5 metod do operowania na liczbach.

toInt

Metoda toInt zwraca z podanego ciągu znaków liczbę całkowitą. Jej użycie jest bardzo proste:

zmienna.toInt();

lub:

('12px').toInt();

Powyższy kod spowoduje zamienienie zmiennej zmienna na liczbę całkowitą. Najczęściej używa się tej metody by uzyskać liczbę oznaczającą długość danego elementu (gdy trzeba usunąć zapis 'px' z końca ciągu znaków). W przykładzie, który zamieszczę po omówieniu kilku metod zauważycie, że zamiana na liczbę całkowitą ma miejsce tylko wtedy gdy dany ciąg znaków zaczyna się od cyfry/cyfr i jest brane pod uwagę pierwsze wystąpienie liczby. To znaczy:

10lol zostanie zamienione na 10, ale już:

lol10 zostanie zamienione na NaN - z ang. Not a Number...

Inny przypadek 10lol10 - nie zostanie zamienione na 1010, ale na 10 (pierwsze wystąpienie ciągu cyfr (lub cyfry)).

toFloat

Metoda toFloat ma podobne działanie co metoda toInt tylko zamiast liczby całkowitej zwraca liczbę zmiennoprzecinkową. Użycie jest takie samo ja w wypadku metody toInt:

zmienna.toFloat();

lub:

('12.5razy').toFloat();

Po wykonaniu tego kodu zostanie zwrócona liczba zmiennoprzecinkowa z danej zmiennej...

Zasady zamiany są podobne jak w wypadku metody toInt - ciąg musi się zaczynać od cyfry, a jedynym znakiem rozdzielającym cyfry może być kropka - wtedy dalsza część zostanie potraktowana jako ułamek dodany do danej liczby:

10.56px zamienione zostanie na 10.56

1,23 zamienione zostanie na 1

isNaN

Skoro już wspominam o metodach toInt i toFloat to pozwolę sobie jeszcze wspomnieć o funkcji isNaN jaką daje nam do dyspozycji sam JavaScript - jest to funkcja, która jako argument pobiera zmienną, którą sprawdza pod względem nie bycia liczbą. Zatem możemy dzięki temu elegancko napisać warunek sprawdzający poprawność podanych argumentów...

isNaN(zmienna);

Funkcja isNaN zwraca true w wypadku gdy dana zmienna nie jest liczbą i false w wypadku gdy dana zmienna jest liczbą...

limit

Metoda limit pozwala określić przedział do jakiego zostanie ograniczona dana zmienna. Pobiera ona dwa argumenty - wartość minimalną i maksymalną danego przedziału:

(150).limit(min,max);

Jeżeli liczba jest mniejsza od dolnej granicy przedziału to jej wartość zostanie zwiększona do tejże granicy, w wypadku gdy liczba jest większa od górnej granicy przedziału wtedy jej wartość zostanie pomniejszona do tej granicy. W wypadku gdy dana liczba mieści się w danym przedziale, jej wartość nie ulegnie zmianie... Przykłady:

10.limit(5,9); // zwróci 9
3.limit(5,9); // zwróci 5
9.limit(5,9); // zwróci 9
6.limit(5,9); // zwróci 6

round

Metoda round służy do zaokrąglania liczby z ustaloną precyzją. Jako argument przyjmuje wielkość precyzji zaokrąglenia. Domyślna wartość to 0, zatem liczba zaokrąglana zostanie zamieniona w liczbę całkowitą (jeżeli jest liczbą zmiennoprzecinkową). Jeśli jako wartość precyzji podamy liczbę większą od zera to liczba będzie zaokrąglana do tylu miejsc po przecinku , w wypadku liczb mniejszych od zera liczba będzie zaokrąglana kolejno do jedności, setek, tysięcy itd.

Składnia metody:

liczba.round(precyzja);

W wypadku zaokrąglania np.: 15 z precyzją 1 otrzymamy 20 natomiast dla liczby 14.9 otrzymamy już 10...

To pora na taki zbiorczy przykład dla wymienionych wyżej metod pliku number.js :

PRZYKŁAD 1

times

Metoda times służy do wywoływania funkcji określoną liczbę razy. Składnia metody:

(ilość_wywołań).times(funkcja);

Dzięki tej metodzie możemy więc wykonać coś w rodzaju pętli określoną liczbę razy. Według mnie jest to dobre rozwiązanie skracające kod - zamiast pisania prostej pętli piszemy liczbę wykonań (lub podajemy zmienną) i wykonujemy dany kod żądaną liczbę razy.

Przykład użycia metody times poniżej:

PRZYKŁAD 2

W następnej części kursu mootools zajmiemy się ostatnim składnikiem grupy Native - plikiem strong.jsm umożliwiającym operacje na ciągach znaków...