eksperymenty z internetem, blogami, bloxem, javascriptem, firefoxem czy różnymi użytecznymi programami czy narzędziami, tak okołoinformatycznie tudzież okołokomputerowo...
Blog > Komentarze do wpisu

blox i obejście limitu 4KB na kod HTML

Przygotowując aktualny szablon i próbując w nim zapanować nad zawartością bocznych szpalt potrzebowałem własnej zawartości HTML, odrębnej od tej oferowanej standardowo na blox.pl. Mam na myśli głównie zakładki, których położenie domyślne jest ciężko zmienić, nie wspominając o tym, że na stronie z komentarzami do notki w ogóle ich nie widać. Podobnie jest z innymi elementami (kalendarz/archiwum, ostatnie notki, itp).

Budując kod HTML dla własnych elementów strony trzeba jednak uporać się z ograniczeniem na jego rozmiar, aktualnie ustawionym na 4KB. Standardowo to ilość zupełnie wystarczająca do wrzucenia kilku widżetów, natomiast przy chęci zbudowania niestandardowej zawartości to mało. Zwrócono już na ten fakt uwagę w komentarzach do opisu tego szablonu, ale nie ma co marudzić - limit jest i nie wygląda na to, żeby był zwiększony (czy zniesiony). To oczywiście może być przedmiot rozmów z administratorami, choćby na najbliższym spotkaniu bloxowym.

Wracając jednak do meritum. Limit ten każe się poważnie zastanowić nad dodatkową zawartością bloga, choć i w te 4KB można bez większego trudu wrzucić tyle dodatków, że potrafią one nieźle spowolnić ładowanie zasadniczych treści (zwłaszcza w blogach z układem z wąską szpaltą po lewej stronie, ładowanej przed wpisami). Ale co zrobić, gdy tym kodem HTML nie są bajerzaste gadżety a pewna niestandardowa zawartość HTML, ujęta w we własne znaczniki CSS i dająca się umieścić na blogu w wybranych przez autora miejscach?

Wtedy można użyć JavaScript.

Należy przygotować odrębny plik skryptu (nazwijmy go kodHTML.js), w którym cały przygotowany według własnego uznania kod HTML (bloki div, treść, linki, obrazki, cokolwiek potrzebnego) należy ująć w najprostsze z możliwych polecenie języka:
document.write(' ');
Kod HTML wstawiony jest między pojedyńcze cudzysłowia ze względu na to, że w argumentach znaczników HTML występuje cudzysłów podwójny (") dzięki czemu w łańcuchu znaków wyświetlanych przez funkcję nie będzie błędów. Należy też pamiętać o użyciu właściwego znaku apostrofu (`) kiedy będzie on do czegoś potrzebny.
Przy większej zawartości HTML polecenie document.write(); można w pliku zastosować wielokrotnie ale jednokrotne użycie może działać trochę szybciej.

Tak przygotowany plik skryptu należy wrzucić do zasobów bloga, a potem w polu na kod HTML (Administracja -> Wygląd -> Elementy) w wybranym przez siebie miejscu wstawić polecenie:
<script type="text/javascript" src="/resource/kodHTML.js"/>
W ten sposób te 4KB nie są już takim ograniczeniem przy tworzeniu własnego, niestandardowego szablonu.

Rozważając teoretycznie to rozwiązanie, można by natknąć się na zdania twórców stron, że JavaScript nie służy do prezentowania treści a ma na celu jedynie wspomóc użyteczność/funkcjonalność strony. Że JavaScript to tylko przeglądarkowe rozszerzenie, a strona powinna być dostępna i bez niego. W praktyce jednak obsługa JavaScript włączona jest w 98% przeglądarek (na bazie moich statystyk) i chyba tylko boty albo przewrażliwieni bezpieczeństwem internauci z niej nie korzystają. Zastosowanie infantylnego document.write() także może odbiegać od kanonów web deweloperów, ale powinno być wystarczająco zrozumiałe dla niezaawansowanych użytkowników. Ci bardziej biegli albo wykorzystają innerHTML albo nie będą się zmagać z ograniczeniami blox.pl wybierając inną platformę ;)

Ponadto nie widzę tu na bloksie alternatywy w przypadku potyczek z limitem i skoro samo działanie niestandardowych elementów jest celem, to JavaScript jest dobrym do tego środkiem.
Mimo wszystko sugeruję jednak najpierw zoptymalizować własne pomysły tak, żeby jak największa ich ilość zmieściła się w limicie w postaci czystego HTML, a dopiero kiedy się już naprawdę nie da inaczej, wtedy stosować JavaScript
.

del.icio.us icon , , , ,
technorati icon ,
poniedziałek, 18 czerwca 2007, sgk

Polecane wpisy

  • usunięcie pomarańczowej "belki promocyjnej" bloxa

    Dziś rano na moich blogach zaskoczył mnie ( i nie tylko mnie ) taki widok: Nie mam pojęcia co to za pomysł, bo zapowiedzi administratorów nigdzie nie widziałem.

  • permalinki do komentarzy na blox.pl (user.js)

    W czasie gdy debergerac udoskonala swój skrypt do awatarów osób komentujących na blox.pl (ostatnio dodał awatary z blip.pl ) ja postanowiłem zająć się czymś, c

  • takie prace warto propagować

    Mimo, że kilka dni temu zrobiłem już o tym wzmiankę w minizapiskach , ale wciąż jestem pod wielkim wrażeniem graficznej doskonałości nowego projektu SenTineLa

TrackBack
TrackBack w tym blogu jest moderowany. TrackBack URL do wpisu:
Komentarze
Gość: wzs, *.crowley.pl
2007/06/18 16:59:04
Lepsza chyba inna platforma. To bezsensowne wręcz utrudnienie, a z JS...
Wszystko prawda, ale w te 98% jakoś nie mogę uwierzyć. Z takim profilem bloga, w erze wszelkich wtyczek pokroju NoScripts?
-
Gość: macol, *.neoplus.adsl.tpnet.pl
2007/06/18 22:38:48
Eh.. a przeglądarki dla niewidomych? Z tego co sie orientuje też z JS'em problemy mają... Lepszym rozwiązaniem chyba już są iframe...
-
sgk
2007/06/18 23:44:37
@wzs
Każdy wybiera sobie platformę pasującą do własnych wymagań i jeśli pewne ograniczenia krępują kreatywność designera posiadającego odpowiednie umiejętności, to zawsze można zdecydować się na coś innego.
Moje statystyki bezwzględne nie są jakieś imponujące i maju 2007 osiągnięcie poziomu 98% w liczbach względnych jest prawdą (mogę Ci podesłać zrzut). Za cały 2007 rok wychodzi 97%.
Ale myślę, że nawet przy znacząco dużej próbie wartość ta poniżej 90% nie schodzi. Co w erze mnogości stron wykorzystujących AJAX mnie nie dziwi. A rozszerzenie NoScripts kojarzy mi się właśnie ze wspomnianym przewrażliwieniem na bezpieczeństwo.

@macol
Pamiętać należy o tym, że to rozwiązanie odnosi się do pewnych ograniczeń, przy których wszystkich możliwych opcji nie da się spełnić. Gdybyśmy mówili o projektowaniu strony w której mamy pełnię możliwości wyboru technik, wtedy moglibyśmy brać pod uwagę wszelkie aspekty użyteczności.
Z iframe jest o tyle problem (przynajmniej dla mnie), że nie potrafią się one dynamicznie przystosowywać do rozmiaru zawartości, a określanie z góry wysokości/szerokości to też zabawa z ograniczeniami. Dlatego JS jest wg mnie lepszym rozwiązaniem.
-
bund
2007/06/25 13:30:22
Niestety, Blox nakłada bardzo duże ograniczenia. Blogger daje o wiele większe możliwości - na przykład edycję całego kodu HTML szablonu :)

Ale to też jest fajne w Bloxie - trzeba się postarać, żeby obejść te ograniczenia (co chyba niedługo zamienię w hobby :) ).
-
sgk
2007/06/26 09:13:41
Jest wiele blogowych platform, które dają pełnię kontroli nad wyglądem i zawartością, ale do tego trzeba mieć pomysł, stosowne umiejętności i dużo czasu.

Ja też się trochę śmieję, że obchodzenie ograniczeń Bloxa to takie specyficzne hobby - im trudniej tym większe wyzwanie :)
bloxowe porady

RSS


dodaj do netvibes

Add to Google


pobierz Spiceworks - darmowe oprogramowanie do zarządzania infrastrukturą IT