Paweł Koralewski

Paweł Koralewski architekt aplikacji,
team leader

Temat: Symfony i jQuery

Operacje, które jQ powinna wykonać po załadowaniu strony, powinny być uruchomione w sekcji head w jQuery(document).ready(function() {}. Ale takich potrzebnych operacji może być kilka, każda zgłaszana przez kolejne części składowe strony (layout, content, różne partiale itd). Czy jest jakiś plugin, który pozwala to rozsądnie zorganizować? Albo może można łatwo bez pluginu?
Maciej Czerpiński

Maciej Czerpiński Programista PHP

Temat: Symfony i jQuery

W "/config/view.yml" aplikacji lub modułu możesz zdefiniować jakie pliki .js czy .css mają być wczytane. Będą dodane tam gdzie jest include_javascripts() w layoucie głównym. Powinno pomóc.Maciej Czerpiński edytował(a) ten post dnia 09.12.10 o godzinie 16:18
Paweł Koralewski

Paweł Koralewski architekt aplikacji,
team leader

Temat: Symfony i jQuery

Maciej Czerpiński:
Powinno pomóc.Maciej Czerpiński edytował(a) ten post dnia 09.12.10 o godzinie 16:18

No nie do końca. O dołączaniu całych plików w view.yml wiem, ale mnie chodzi o dołączanie części skryptu JS w zależności od modułu/akcji.
Maciej Czerpiński

Maciej Czerpiński Programista PHP

Temat: Symfony i jQuery

To może partialem? Taka pierwsza myśl. Poszukam jeszcze z ciekawości sam.Maciej Czerpiński edytował(a) ten post dnia 09.12.10 o godzinie 18:13

konto usunięte

Temat: Symfony i jQuery

Paweł Koralewski:
Operacje, które jQ powinna wykonać po załadowaniu strony, powinny być uruchomione w sekcji head w jQuery(document).ready(function() {}.
Nie, lecz w BODY na samym końcu dokumentu (przed zamknięciem elementu BODY).
Paweł Koralewski

Paweł Koralewski architekt aplikacji,
team leader

Temat: Symfony i jQuery

Kamil Brenk:
Nie, lecz w BODY na samym końcu dokumentu (przed zamknięciem elementu BODY).

...co nie ma wpływu na postawiony przeze mnie problem :)

konto usunięte

Temat: Symfony i jQuery

Kamil Brenk:
Paweł Koralewski:
Operacje, które jQ powinna wykonać po załadowaniu strony, powinny być uruchomione w sekcji head w jQuery(document).ready(function() {}.
Nie, lecz w BODY na samym końcu dokumentu (przed zamknięciem elementu BODY).

Ech...

Na końcu dokumentu, to się dołącza skrypty (szczególnie bardzo zdalne), aby ich ładowanie nie wpłynęło na prezentację strony.

Kod podłączony w sposób pokazany w opisie zagadnienia zostanie wykonany po wywołaniu na dokumencie zdarzenia "onload".

Z Symfony niestety nie pomogę teraz, ale nie rozumiem co przeszkadza w podpięciu większej liczby handlerów tego zdarzenia. Może już za długo JS nie używałem, że tak mówię...
Grzegorz Śliwiński

Grzegorz Śliwiński Programista python

Temat: Symfony i jQuery

Paweł Koralewski:
Operacje, które jQ powinna wykonać po załadowaniu strony, powinny być uruchomione w sekcji head w jQuery(document).ready(function() {}. Ale takich potrzebnych operacji może być kilka, każda zgłaszana przez kolejne części składowe strony (layout, content, różne partiale itd). Czy jest jakiś plugin, który pozwala to rozsądnie zorganizować? Albo może można łatwo bez pluginu?

Używas tyle razu ready, ile potrzebujesz, możesz zdefiniować jeden ze wszystkim, a możesz zdefiniować 5 z różnym wkładem i każdy zostanie wywołany, gdy dokument zostanie załadowany.

Tak jak Łukasz pisał powyżej, nic się w tym względzie nie zmieniło ;-) Co to w końcu za event handler, do którego akcję można tylko podmienić ;-)
Paweł Koralewski

Paweł Koralewski architekt aplikacji,
team leader

Temat: Symfony i jQuery

No tak, to się w sumie trzyma --wiadomo czego--. Dzięki

konto usunięte

Temat: Symfony i jQuery

Łukasz Karpuć:
Kamil Brenk:
Paweł Koralewski:
Operacje, które jQ powinna wykonać po załadowaniu strony, powinny być uruchomione w sekcji head w jQuery(document).ready(function() {}.
Nie, lecz w BODY na samym końcu dokumentu (przed zamknięciem elementu BODY).

Ech...

Na końcu dokumentu, to się dołącza skrypty (szczególnie bardzo zdalne), aby ich ładowanie nie wpłynęło na prezentację strony.

Kod podłączony w sposób pokazany w opisie zagadnienia zostanie wykonany po wywołaniu na dokumencie zdarzenia "onload".

Z Symfony niestety nie pomogę teraz, ale nie rozumiem co przeszkadza w podpięciu większej liczby handlerów tego zdarzenia. Może już za długo JS nie używałem, że tak mówię...
Nie onload.

btw. http://developer.yahoo.com/performance/rules.html#js_b...

konto usunięte

Temat: Symfony i jQuery

Kamil Brenk:
Nie onload.

Nazwy nie pamiętam, to nieistotne, ale z ciekawości: jaki?

btw. http://developer.yahoo.com/performance/rules.html#js_b...

Dobry dokument, potwierdza co napisałem, chociaż nie jestem jego autorem ;)

konto usunięte

Temat: Symfony i jQuery

Łukasz Karpuć:
Kamil Brenk:
Nie onload.

Nazwy nie pamiętam, to nieistotne, ale z ciekawości: jaki?
Jest zasadnicza różnica pomiędzy onLoad a DOMContentLoaded, prosty przykład:
http://ie.microsoft.com/testdrive/HTML5/DOMContentLoad...

btw. http://developer.yahoo.com/performance/rules.html#js_b...

Dobry dokument, potwierdza co napisałem, chociaż nie jestem jego autorem ;)
Wcześniej było napisane:
Na końcu dokumentu, to się dołącza skrypty (szczególnie bardzo zdalne), aby
ich ładowanie nie wpłynęło na prezentację strony.
Kod podłączony w sposób pokazany w opisie zagadnienia zostanie wykonany po
wywołaniu na dokumencie zdarzenia "onload".

Zmierzam do tego, że:
- jeśli skrypty JavaScript wrzucimy do HEAD to zostaną one pobierane jeszcze przed rozpoczęciem renderowania strony w oknie przeglądarki,
- niepotrzebnie spowolnią wczytywanie się treści (wbrew strategii [em]Progressive Enhancement[/em]), która jest tutaj najważniejsza. Pliki JavaScript są w 90% aplikacji tylko dodatkiem, dlatego nie warto uczyć innych złych nawyków.

Tak czy siak, bez offtopu. Pozdrawiam.

konto usunięte

Temat: Symfony i jQuery

Kamil Brenk:
Łukasz Karpuć:
Kamil Brenk:
Nie onload.

Nazwy nie pamiętam, to nieistotne, ale z ciekawości: jaki?
Jest zasadnicza różnica pomiędzy onLoad a DOMContentLoaded, prosty przykład:
http://ie.microsoft.com/testdrive/HTML5/DOMContentLoad...

Możesz to nazwać nawet na_wczitaniu, referencja w moim mózgu kieruje do tego samego eventa.

Zmierzam do tego, że:
- jeśli skrypty JavaScript wrzucimy do HEAD to zostaną one pobierane jeszcze przed rozpoczęciem renderowania strony w oknie przeglądarki,
- niepotrzebnie spowolnią wczytywanie się treści (wbrew strategii [em]Progressive Enhancement[/em]), która jest tutaj najważniejsza. Pliki JavaScript są w 90% aplikacji tylko dodatkiem, dlatego nie warto uczyć innych złych nawyków.

Czyli "Na końcu dokumentu, to się dołącza skrypty (szczególnie bardzo zdalne), aby ich ładowanie nie wpłynęło na prezentację strony.". Nie rozumiem co tu jest sprzeczne.

konto usunięte

Temat: Symfony i jQuery

Paweł Koralewski:
...
Czy jest jakiś plugin, który pozwala to rozsądnie zorganizować? Albo może można łatwo bez pluginu?

Nie jestem do końca pewny, ale wydaje mi się że sfDynamicsPlugin powinien pomóc http://www.symfony-project.org/plugins/sfDynamicsPlugin (dokumentacja http://dynamics.dakrazy.net/)

"Manage javascripts/stylesheets libraries as coherent packages, dependencies, packing, caching and supercaching. JS framework independant. No magic included."Damian Kopiec edytował(a) ten post dnia 10.12.10 o godzinie 08:52
Piotr Lewandowski

Piotr Lewandowski Programista
aplikacji
internetowych (PHP,
MySQL, SF2, Mag...

Temat: Symfony i jQuery

Jeśli chodzi o symfony i wstawianie dowolnego kodu w dowolne miejsce to na pewno mozna zrobic to za pomoca slotow, lub kombinacją slot + partial:

O slotach symfony:
http://www.symfony-project.org/book/1_0/07-Inside-the-...

Jeśli chodzi o samą zasadność umieszczania jQuery(document).ready() w head, to powiedziałbym że nie ma to raczej wypływu na funkcjonalność aplikacji, gdyż jak już wcześniej powiedziano callback funkcji ready() zostanie wywołany w momencie gdy struktura DOM będzie gotowa, a jak mi wiadomo (jestem bardziej serverside niż frontendowcem) to oznacza że sam fragment kodu js zostanie też wcześniej załadowany.

Następna dyskusja:

[Symfony][Symfony2] Błąd 500




Wyślij zaproszenie do