-
Data: 2013-05-08 09:23:14
Temat: Re: Jak wstawić skrypt JS?
Od: Cezary Tomczyk <c...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu wtorek, 7 maja 2013 23:24:07 UTC+2 użytkownik Marek napisał:
> Wstawiam na stronę WWW widget pogodowy:
>
>
>
> <div class="box">
>
> <script type="text/javascript"
>
> src="http://www.pogodynka.pl/widget/get/gdansk_gdans
k/?a1=FFFFFF&a2=0088FF"></script>
>
> </div>
>
>
>
> Pięknie się wyświetla ale ma jeden feler: serwer jest bardzo wolny i
>
> blokuje ładowanie się strony (wykonywanie innych skryptów) czasem o
>
> kilkadziesiąt sekund. Czy da się bez angażowania programowania po
>
> stronie serwera załadować i wykonać ten skrypt asynchronicznie? Dodanie
>
> async=true nie zadziała gdyż skrypt zwraca document.write(...) więc musi
>
> się wykonać dokładnie w tym miejscu gdzie ma się pogoda wyświetlić.
>
>
>
> Ajax też nie zadziała bo wywołanie jest między domenowe.
>
>
>
> Czy jest jeszcze jakiś sposób?
Ja bym zrobił tak:
<div class="box">
<script>
var s = document.createElement('script'),
head = document.head || document.getElementsByTagName('head')[0];
s.async = 'async';
s.src = 'http://www.pogodynka.pl/widget/get/gdansk_gdansk/?a
1=FFFFFF&a2=0088FF';
head.insertBefore(s, head.firstChild);
</script>
</div>
"Ale"... to wcale nie musi być rozwiązanie problemu. "Pogodynka" po załadownaniu
script-u może uruchamiać taką ilość requestów, że "zapycha" się maksymalna ilość
requestów, jakie może wykonać przeglądarka dla jednej lokalizacji w tym samym czasie.
Spróbuj jeszcze uruchomić powyższe po załadowaniu zawartości strony:
<div class="box">
<script>
window.onload = function () {
var s = document.createElement('script'),
head = document.head || document.getElementsByTagName('head')[0];
s.async = 'async';
s.src = 'http://www.pogodynka.pl/widget/get/gdansk_gdansk/?a
1=FFFFFF&a2=0088FF';
head.insertBefore(s, head.firstChild);
};
</script>
</div>
+ uwagi:
https://developer.mozilla.org/pl/docs/DOM/window.onl
oad#Uwagi
--
Cezary Tomczyk
http://www.ctomczyk.pl/
Następne wpisy z tego wątku
- 08.05.13 19:52 Marek
- 08.05.13 21:11 ABC
- 09.05.13 08:23 Marek
- 09.05.13 16:40 Paweł Piskorz
- 09.05.13 18:02 Marek
- 09.05.13 21:47 Marek
Najnowsze wątki z tej grupy
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
Najnowsze wątki
- 2025-02-21 Warszawa => Key Account Manager IT <=
- 2025-02-21 Warszawa => Data Engineer (Tech Lead) <=
- 2025-02-21 Aliexpress zaczął oszukiwać na bezczelnego.
- 2025-02-21 Warszawa => System Architect (Java background) <=
- 2025-02-21 Kula w łeb
- 2025-02-21 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-21 Warszawa => Solution Architect (Java background) <=
- 2025-02-21 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-02-21 Pawel S
- 2025-02-21 Warszawa => Key Account Manager (Usługi HR) <=
- 2025-02-21 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-21 Chrzanów => Programista NodeJS <=
- 2025-02-21 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-21 Warszawa => Administrator Systemów Windows IT <=
- 2025-02-21 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=