eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.wwwJak wstawić skrypt JS?Re: Jak wstawić skrypt JS?
  • 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/

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: