Pokazywanie postów oznaczonych etykietą flickr. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą flickr. Pokaż wszystkie posty

2010-08-16

[jQuery] Nowy View Large On Black i .one()

Niedawno zmienił się layout galerii Flickr i przestał mi działać skrypcik View Large On Black, o którym pisałem tutaj.
Modyfikując skrypt natknąłem się na fantastyczną funkcję jQuery .one(). Dzięki .one() można w prosty sposób zdefiniować, aby jakieś zdarzenie mogło być wykonane tylko jeden raz. Można oczywiście tego typu zabieg wykonać również za pomocą .bind() i .unbind() ale .one() jest znacznie bardziej "eleganckie".
Nowy skrypt View Large On Black - i przy okazji zastosowanie funkcji .one() - można obejrzeć pobierając plik stąd.

2010-04-18

[kohana] cache'owanie

Pisząc poprzedni wpis do bloga zauważyłem, że mój View Large On Black potrzebuje około 2 sekund na wyrenderowanie strony:

W tym czasie aplikacja trzy razy łączy się z api flickr'a aby pobrać dane wyświetlanych zdjęć.
Dane te są stałe więc można tu z powodzeniem wykorzystać cache'owanie.
W kohanej aby dodać dane do cache'a wystarczy:

Kohana::cache($nazwa_zmiennej,$dane);

Odczyt danych wygląda natomiast w ten sposób:

$wynik = Kohana::cache($nazwa_zmiennej,null,$lifetime);
gdzie $lifetime oznacza czas życia zmiennej cache.
Jeśli nie podamy $lifetime:

$wynik = Kohana::cache($nazwa_zmiennej);
to aplikacja będzie uwzględniać dane, które trafiły do cache'a w ciągu ostatnich 60 sekund.
Po umieszczeniu w cache'u danych pobieranych z flickr'a udało się zaoszczędzić ok. 2 sekundy podczas każdego przeładowania i renderowanie strony wynosi ok. 0,02 sekundy.

2010-02-04

jQuery + Greasemonkey na przykładzie Flickr'a

Istnieje możliwość tworzenia skryptów do Greasemonkey w jQuery - to dla mnie bardzo dobra nowina bo odkąd poznałem jQuery pisanie w czystym javascript'cie jakoś mnie nie cieszy. ;)
Aby skorzystać w GM (Greasemonkey) z jQuery wystarczy wpisać w skrypcie:
// Add jQuery
var GM_JQ = document.createElement('script');
GM_JQ.src = 'http://jquery.com/src/jquery-latest.js';
GM_JQ.type = 'text/javascript';
document.getElementsByTagName('head')[0].appendChild(GM_JQ);

// Check if jQuery's loaded
function GM_wait() {
 if(typeof unsafeWindow.jQuery == 'undefined') { window.setTimeout(GM_wait,100); }
 else { $ = unsafeWindow.jQuery; letsJQuery(); }
}
GM_wait();

// All your GM code must be inside this function
function letsJQuery() {}

źródło: http://joanpiedra.com/jquery/greasemonkey/
Wpadłem na to rozwiązanie logując się po raz setny do pewnego portalu, do którego mam koło dwudziestu różnych loginów. Aby się tam zalogować trzeba wypełnić trzy pola, co w żaden sposób nie dało się zapamiętać w przeglądarce. W pewnym momencie miałem już tego kompletnie dość - postanowiłem zrobić coś, co ułatwi mi nieco życie. Z pomocą przyszedł mi tu właśnie GM i jQuery - pamiętają za mnie wszystkie moje loginy. :]

2010-01-14

[jQuery] Gadżet Blogger'a z fotkami z Flickr'a

Stworzyłem mały gadżet do bloggera, za pomocą którego można tutaj obejrzeć moje fotki z galerii flickr'owej. Skorzystałem z ogólnodostępnych dobrodziejstw: API Flickr'a, jQuery'ego no i możliwości tworzenia własnych gadżetów na bloggerze.