Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM    Subskrybuj kanał ATOM dla tagu javascript Kanał ATOM (tag: javascript)

Autor wpisu: batman, dodany: 13.07.2011 08:00, tagi: javascript

Poprzedni quiz przygotowany przez serwis Nettuts+ dotyczył jQuery i większych problemów raczej nie sprawił. Kolejna odsłona quizu dotyczy czystego JavaScript i jeśli ktoś na co dzień nie siedzi w tym języku, to może stanowić nie lada wyzwanie. Większość pytań, jeśli nie wszystkie, jest podchwytliwa i trzeba dobrze się zastanowić nad odpowiedzią. Za pierwszym razem osiągnąłem wynik 82,35%. Jak wam poszło?

Quiz znajdziecie pod adresem http://net.tutsplus.com/quizzes/nettuts-quiz-3-javascript/

Autor wpisu: batman, dodany: 11.07.2011 08:00, tagi: javascript

Podczas niedanej premiery Platform Preview IE10 oznaczonej numerem drugim, dowiedzieliśmy się, że Internet Explorer 10 dołączył do grona przeglądarek obsługujących Web Workers. W ten oto sposób, wszystkie najważniejsze desktopowe przeglądarki wspierają tę technologię. Niestety w przypadku mobilnych przeglądarek tylko Opera Mobile umożliwia korzystanie z Web Workers.

Czy w ogóle są Web Workres? Jest to technologia pozwalająca wykonywać skrypty JavaScript w tle, równolegle do głównego wątku, dzięki czemu długo działające skrypty nie blokują interfejsu użytkownika. W dużym uproszczeniu można je porównać do popularnego Ajaxa.

Zasada działania Web Workers jest banalna i sprowadza się do utworzenia obiektu Worker oraz odebrania/wysłania wiadomości do i z skryptu uruchomionego w tle. Warto już na początku wiedzieć, że skrypt uruchomiony w tle nie ma możliwości operować na drzewie DOM. Dlatego wszystkie informacje o konieczności modyfikacji drzewa DOM należy wysłać do głównego skryptu.

Zacznijmy od utworzenia workera.

var worker = new Worker("pracus.js");

Teraz musimy dodać handlera, który będzie reagował na widomości wysyłane przez workera.

worker.onmessage = function(event) {
};

Warto również zdefiniować hadlera przechwytującego błędy.

worker.onerror = function(event) {
};

Jeśli jako workera wskażecie istniejący, ale pusty plik, wówczas zgłoszony zostanie błąd. Dlatego zawsze dodawajcie do pliku workera pustą linię.

Dane odbierane ze skryptu działającego w tle zostały umieszczone we właściwości data. Z kolei informacje o błędzie znajdują się we właściwościach message (treść błędu), filename (nazwa pliku, w którym wystąpił błąd) oraz lineno (wiersz, w którym wystąpił błąd).

Wysłanie wiadomości do workera pracującego w tle odbywa się przy pomocy metody postMessage, wywołanej na obiekcie workera. Wiadomością może być dowolny ciąg, JSON lub dowolny obiekt, który można zserializować. Jedyne czego nie możemy przesłać, to obiekty zawierające metody.

worker.postMessage({
    id: 123,
    user: "jankowalski"
});

Po zebraniu wszystkiego w jedną całość, uzyskujemy taki oto skrypt.

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: batman, dodany: 07.07.2011 08:00, tagi: javascript

Od pewnego czasu umysły geeków na całym świecie zaprząta Node.js – technologia pozwalająca uruchomić JavaScript po stronie serwera. Szał na punkcie Node.js na tyle jest duży, iż nawet Microsoft go dostrzegł i zaoferował swoją pomoc w umożliwieniu korzystania z niego w systemie operacyjnym Windows. W efekcie dwa dni temu wydana została wersja 0.5.0, która podobno o wiele lepiej radzi sobie z Windowsem. Nie mogąc się doczekać na oficjalnego exe-ka, zakasałem rękawy i sam sobie skompilowałem Node.js na Windowsie. I wiecie co? To działa!

Okazuje się, że instalacja wcale taka straszna nie jest, a Windows po zainstalowaniu kilku drobiazgów doskonale sobie radzi w kompilowaniu aplikacji ze źródeł. Zacznijmy od początku.

  1. Najpierw zainstalujcie Git for Windows – http://code.google.com/p/msysgit/
  2. Następny w kolejce jest Python – http://www.python.org/download/releases/. W moim przypadku zadziałał w wersji 2.7.2. Innych nie sprawdzałem. Nie wiem czy będzie możliwe zainstalowanie Node.js korzystając z Pythona w wersji 3, więc nie ryzykujcie i zainstalujcie 2.7.
  3. Ostatni do instalacji jest MinGW – http://www.mingw.org/.

    W przypadku MinGW ważne jest aby podczas instalacji zaznaczyć wszystkie możliwe checkboxy poza kompilatorami Fortran i ObjC (chyba, że planujecie kompilować aplikacje napisane w tych językach).

  4. Bardzo ważne jest, aby dodać do zmiennej środowiskowej Path ścieżki do niezbędnych aplikacji. W tym celu w panelu sterowania wpisujemy w wyszukiwarkę (prawy górny róg) zaawansowane ustawienia systemu i klikamy w link, który się pojawi. Powinniśmy ujrzeć takie oto okno.

    zaawansowane_ustawienia_systemu

    Klikamy w przycisk Zmienne środowiskowe i odnajdujemy zmienną Path, do której musimy dodać miejsce, w którym mamy zainstalowanego Pythona, Gita oraz MinGW. W moim przypadku będą to C:\Python27, C:\Program Files\Git\bin, C:\MinGW\bin. Pamiętajcie, że kolejne wartości w zmiennej Path należy oddzielić od siebie średnikiem.

  5. Powoli zbliżamy się ku końcowi. Jedyne co pozostało, to pobranie Node.js oraz jego skompilowanie. W tym celu udajemy się na stronę projektu – http://nodejs.org/ i pobieramy najaktualniejszą wersję. Ja zdecydowałem się na niestabilną wersję 0.5.0 ze względu na lepsze działanie pod Windowsem.
  6. Opis kompilacji znajdziemy pod adresem https://github.com/joyent/node/wiki/Building-node.js-on-mingw. Wygląda on następująco:
  • uruchamiamy MinGW Shell (wiersz poleceń)
  • przechodzimy na dysk C, czyli cd /c
  • jeśli chcemy skorzystać ze stabilnej wersji Node.js, klonujemy repozytorium Git – git clone https://github.com/joyent/node.git
  • jeśli zależy nam na korzystaniu z najnowszej niestabilnej wersji, wówczas tworzymy na dysku C katalog o nazwie node i kopiujemy do niego zawartość pobranego archiwum (http://nodejs.org/#download)
  • przechodzimy do katalogu node – cd /c/node
  • wykonujemy skrypt konfiguracji – ./configure –without-ssl Ważne jest dodanie opcji –without-ssl. W większości przypadków nie będziemy korzystać z SSL, więc nie ma sensu doinstalowanie kolejnych aplikacji
  • na koniec wykonujemy make Zajmie to dobrych kilka minut (im lepszy sprzęt, tym szybciej się wykona). Przez ekran przelecą nam tysiące robaczków i najbardziej wyczekiwany komunikat ‘build’ finished successfully.

Już. Node.js jest zainstalowany. W celu szybkiego przetestowania czy działa, wpisujemy node i cieszymy, że działa. Ważne jest aby polecenie node wykonać w katalogu, w którym zainstalowaliśmy Node.js. Ewentualnie możemy dodać kolejną wartość do zmiennej środowiskowej Path.

Jeśli chcielibyśmy sprawdzić jak działa serwer www oparty o Node.js, wystarczy, że napiszemy prosty skrypt JavaScript i wskażemy, że chcemy go wykonać.

Przykładowy kod, który znajdziemy w dokumentacji wygląda następująco:

var http = require('http');

http.createServer(function (request, response) {
	response.writeHead(200, {'Content-Type': 'text/plain'});
	response.end('Hello World\n');
}).listen(8124);

console.log('Server running at http://127.0.0.1:8124/');

Po wykonaniu polecenia node /c/Users/batman/Desktop/server.js, gdzie /c/Users/batman/Desktop/server.js powinniście zamienić na ścieżkę, w której zapisaliście swój plik, w konsoli pojawi się komunikat Server running at http://127.0.0.1:8124/. Po wpisaniu do przeglądarki adresu z komunikatu ujrzymy Hello World.

Co dalej? Przede wszystkim dokumentacja – http://nodejs.org/docs/ i dużo wolnego czasu.

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: batman, dodany: 02.07.2011 08:00, tagi: css, javascript

Dobrych książek nigdy dosyć. Zwłaszcza gdy są darmowe i do tego w postaci elektronicznej (łatwiej takie przechowywać, a czytniki ebooków są coraz lepsze). W serwisie SmashingHub pojawiła się właśnie lista 15 książek w wydaniu elektronicznym, które każdy szanujący się web developer powinien chociaż przejrzeć. Książki opisują zagadnienia związane z HTML/HTML5, CSS/CSS3, JavaScript oraz z szeroko rozumianym tworzeniem stron internetowych. Ponieważ zbiór zawiera książki różnych autorów, ich poziom jest różny, jednak jestem pewien, że każdy znajdzie dla siebie coś odpowiedniego.

Listę znajdziecie pod adresem http://smashinghub.com/15-free-e-books-every-developer-should-have.htm.

Autor wpisu: Tomasz Kowalczyk, dodany: 19.06.2011 16:04, tagi: javascript, jquery, mysql, php

Chcąc stworzyć dynamiczną stronę oferującą wiele funkcjonalności w sposób zbliżony do tego, jak zachowują się aplikacje desktopowe, niestety nie mamy innej możliwości niż wykorzystanie technologii AJAX. Wychodząc naprzeciw tym wymaganiom dzisiaj publikuję kolejny zestaw przydatnych materiałów dotyczących tworzenia różnego rodzaju funkcjonalności z jej wykorzystaniem. Mam nadzieję, że przydadzą się Wam zarówno w pracy, jak i [...]

Autor wpisu: batman, dodany: 06.06.2011 18:45, tagi: javascript

Kolejne “the best of” jakie wpadło mi w ręce zawiera dziesięć największych błędów, jakie popełniamy podczas pracy z językiem JavaScript. Do grona naszych najcięższych przewinień zaliczono między innymi stosowanie zmiennych globalnych, nieużywanie średników, korzystanie z funkcji eval czy niestosowanie klamer.

Pełną listę błędów wraz z ich przykładami oraz wyjaśnieniem dlaczego nie powinno się tak programować znajdziecie pod adresem http://net.tutsplus.com/tutorials/javascript-ajax/the-10-javascript-mistakes-youre-making/.

Autor wpisu: Tomasz Kowalczyk, dodany: 05.06.2011 22:58, tagi: javascript, jquery

jQuery to biblioteka, którą albo się uwielbia, albo nienawidzi. Można ją wychwalać za prostotę pisanego kodu i umożliwienie programiście tworzenie w prosty sposób zaawansowanych rozwiązań. Z drugiej strony, jako najbardziej popularne rozwiązanie stosowane przez twórców stron internetowych zebrało bardzo ostrą krytykę wśród tych, którzy są zwolennikami pisania własnego, "czystego" kodu, pozbawionego wszelkich "ulepszaczy". Niezależnie od [...]
Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.