Yüklüyor jQuery önleme

6 Cevap php

Jquery site genelinde dünyada kullanılan header.php ilave edilirse o zaman nasıl sadece gerçekten ihtiyaç duymaz sitenin bu sayfaları için jquery kütüphanesini yüklemek için durdurmak için? Biz bir başlığa daha fazla kullanamazsınız.

sorunun amacı aslında gerekmez yavaş yükleme olan sayfa cezalandırmak için değil etmektir.

6 Cevap

Hatta başlamak için başlıklarını kullanmayı tercih eğer siteniz birden fazla küresel başlığını gerekmez. Öyle ise, sadece tüm sayfalarda jQuery içerir. Bu küçük önbellekli bir dosya var, bu tarama deneyimi zarar vermez.

Kullanarak google-hosted version, onlar bile sitenize ulaşmak önce kullanan birçok zaten önbelleğe olması söz konusu olabilir.

Ben bir şekilde var çekiç taşımak için herkes sorarken tırnak içine benim yumruk vurma suçlu olmuştur ...

Neden diğer ucundan sorunu çözmek ve ilk yükünü optimize etmek jQuery kullanmak değil mi?

Zaten indirmek için bir süre alıyor büyük sayfalar varsa, neden daha az ölçülebilir alanlarda kapalı bölümü ve $ (kullanın). Load () bu doldurmak için?

Sayfa daha hızlı (daha iyi bir kullanıcı deneyimi) yük ve size ihtiyacım yok sayfalara herhangi bir ek işleme ekleyerek gerekmez.

Cheers, -jc

Eğer doğru şekilde yapılandırılmış bir web sunucusu (veya google CDN) jQuery dosyası yüklenirken varsayarak, her sayfada yeniden indirilen önbelleğe ve olmayacaktır. O zaman gerçekten kütüphanesinden herhangi bir javascript özelliklerini kullanmak gerekmez sayfalarında yükleme kaldırmak için çalışmakla hiçbir şey kazanamaz bir ziyaretçi jQuery ihtiyacı sitenizde en az bir sayfa vuracaktır varsayarsak.

İlk olarak, üretim için sıkıştırılmış jquery kullanmak. Bu çok küçük. Jquery ilk sayfa ile indirilen İkincisi, bir kez IIRC, önbelleğe olacak ve sonraki her istek için sunucudan alınması gerekmez.

Eğer gerçekten açıkça sadece ihtiyacınız olan sayfalarda jquery yüklemek gerekir Aksi takdirde, bunu jquery yüklemek gerek olmadığını header.php anlatmak için sayfanızın vücut için bir yol var olurdu. Header.php "body.php" önce yüklenmiş ise o biraz fantezi çıktı tamponlama ya da olmadan yapmak oldukça zor.

Eğer Smarty gibi bir çiftleşmiş sistemi kullanıyorsanız size işlenecek tüm sayfayı göndermeden önce body.php ayarlanmış bir $ loadjquery bayrak kontrol etmek için ana sayfa şablonuna bir koşullu olabilir. Ama bu çok karmaşık.

Sorunuz çok genel, bazı özel, siteye hatta belki bir bağlantı harika olurdu. Eğer başlık ve kullanımını yük önce bir CMS kullanıyorsanız Şahsen ben o sayfa için "bayrak" çeşit yapmak için denemek istiyorsunuz ya da sadece bir sayfa yükleme ve ardından bu sayfadan başlığını yüklüyorsanız, bir değişken eklemek olduğunu yükleme jQuery için bayrak gibi.

An example: If a user wants to see www.mysite.com then the following file would be loaded: www.mysite.com/index.php with the following code:

<?php $needJQuery = true;
include('header.php');
echo 'content will go here';
include('footer.php'); ?>

header.php bu gibi şeyler şunlardır:

<?php if ($needJQuery) { ?>
<script src="/jquery/jquery-min-3.2.1.js" />
etc. for all the content that you need above/below.
<?php } ?>

JQuery yüklü gerekmez sayfaları için, tanımsız $ needJQuery bırakacaktı ya da aşağıdaki gibi yapardı:

<?php $needJQuery = false; ?>

Bu yardımcı olur umarım

Daha önce belirtildiği gibi, gerekirse bu bayrak değişkenin varlığı ve sadece çıkış jquery başlıkları kontrol edeceğiz, böylece başlık dosyasını değiştirmek.

Eğer başlık dosyasını değiştirmek için yeteneği yoksa, size açık çıktı tamponlama ile yük olabilir ve istemci dışarı kafaları önce filtre çıkış:

<?php
ob_start();
include('header.php');
$header = ob_get_flush();
$cleanheader = some_operation_that_removes_the_jquery_script_tags($header);
echo $cleanheader
?>