Jutro uruchomię własną stronę i spodziewam się kilkuset wizyt.

Napisałem ten skrypt na podstawie tego, co powiedziała mi:

<?
$f = fsockopen("code.jquery.com", 80, $errno, $errstr, 30); 
if(!$f){
echo '<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript"></script>'; }
else {
echo '<script src="http://code.jquery.com/jquery-1.6.4.min.js" type="text/javascript"></script>'; }
?>

Zasadniczo, jeśli cdn code.jquery.com jest zawsze w dół (jak minęło około 20 minut temu), wtedy biblioteka Google API wkroczy. Próbowałem tego, gdy jQuery był włączony, a to działa, ale na wszelki wypadek Znowu spadnie, czy ten skrypt będzie działał? (Przez przechodzenie do biblioteki Google) Nie mogę tego testować, musiałbym zrobić kod.jquery.com Go offline. lol.

Zrobiłbym wymiany CSS, ale moja strona jest oparta na jQuery i AJAX, więc naprawdę potrzebuję go w funkcjonowaniu przez cały czas. Gościłbym go na własnej stronie, ale moja strona nie jest tak szybka jak kod.jquery.com lub googleapis.com, kiedy biegną dobrze.

Wielkie dzięki! Wszelkie odpowiedzi bardzo mile widziane :)

8
Karan 20 październik 2011, 19:17

5 odpowiedzi

Najlepsza odpowiedź

Dlaczego miałbyś wykonać tę stronę? Zrobiłoby to więcej sensu do tego, że zostanie wykonana strona klienta:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="http://code.jquery.com/jquery-1.6.4.min.js">\x3C/script>')</script>

To pierwsze stara się załadować bibliotekę z Google. Jeśli ładuje się, będzie dostępny window.jQuery. Jeśli nie, stara się ładować z kodu.jquery.com. Możesz nawet umieścić w innym po tych dwóch, aby załadować wersję lokalną, jeśli ani obciążenie:

<script>window.jQuery || document.write('<script src="my/js/jquery-1.6.4.min.js">\x3C/script>')</script>
23
swatkins 20 październik 2011, 15:23

Lub możesz to zrobić za pomocą podstawowego HTML:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/libs/jquery-1.6.2.min.js"><\/script>')</script>
11
Manuel van Rijn 20 październik 2011, 15:21

Nie zrobi ci dużo dobrego. Umieszczenie przycisku do każdej prośby spowalnia sytuację ogromną kwotę. Ponadto, jeśli masz buforowanie w górę, zmiana nie zostanie odzwierciedlona.

Pójdę na całkowicie JavaScript Solarium: Spróbuj załadować jeden, a jeśli to nie zadziała, spróbuj drugiego.

5
Joe 20 październik 2011, 15:22

Wierzę, że to działało dobrze, ale dodaje to dużo na każdym żądaniu na swoim serwerze.

Zrób to strona klienta z JavaScript,

<script src=http://code.jquery.com/jquery-1.6.4.min.js"></script>
 <script>window.jQuery || document.write('<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js">\x3C/script>')</script>
2
Declan Cook 20 październik 2011, 15:25

Możesz przetestować (na lokalnym serwerze / testu), po prostu umieszczając wpis dla kodu Przykład, lokalny adres IP, który nie jest używany w sieci. System tymczasowo zobaczy, że jako DNS dla Code-Jquery.com i nie otrzyma odpowiedzi.

0
Adam 14 maj 2013, 06:18