Dołączanie jQuery w locie

0

Witam, problem mam następujący. Napisałem plugin do Wordpressa i tam plugin działa fajnie, a w pluginie wszystkie funkcje są wywoływane za pomocą jQuery(), a nie $().
Jednak można pobrać link z widżetu i wkleić go na dowolnie inną stronę, nawet tam gdzie jQuery jest niezaładowane i tutaj pojawia się problem, ponieważ dołączam skrypty tak:

if (typeof jQuery == 'undefined') {
    var headElement = document.getElementsByTagName("head")[0];
    linkElement=document.createElement("script");
    linkElement.src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js";
    linkElement.type="text/javascript";
    headElement.appendChild(linkElement);
}

Takie wywołanie sprawia, że po uruchomieniu strony bez dołączonego jQuery, mimo, że je ładuję w powyższy sposób wyrzuca błąd jQuery is not defined.

Czy wie ktoś dlaczego tak się dzieje?

0
  1. Kod musi być wklejony przed wykonywaniem czegokolwiek na jQuery
  2. Doklejasz ładowanie jQuery jako ostatni element HEAD. Zapewne wpada więc w kolejkę jako ostatnie do załadowania. Spróbuj wkleić to np. na początek HEAD.
0

Dziękuje, faktycznie pomogło wstawienie powyższego skryptu na początku. Inny problem pojawił się w trakcie. Mianowicie gdy wstawiam skrypt na serwis końcowy, on pobiera xml z serwisu źródłowego (wordpressa). Ale problem jest w tym, że zasada Same Origin Policy ogranicza pobieranie danych z różnych domen.

Plik XML jest generowany dynamicznie, ale nie w locie tylko raz na dzień przez funkcję file_put_contents , ale nie mam pomysłu jak dołączyć mu nagłówki, które pozwolą pobierać JS te dane.

	header('Access-Control-Allow-Origin: *');
	header('Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS');

Jak rozwiązać ten problem, bo już pomysłu nie mam?

0

Wpisz w google "nazwa_twojego_serwera_www custom headers", np. "apache custom headers". Powinieneś móc spowodować, by do statycznych plików doklejane były nagłówki.

0

Dzięki wielkie! Znalazłem informacje jak to zrobić w htaccess i działa. Pozdrawiam!

1 użytkowników online, w tym zalogowanych: 0, gości: 1