SORU
14 EKİM 2009, ÇARŞAMBA


Aynı sayfada jQuery birden çok sürümünü kullanabilir miyim?

Üzerinde çalıştığım bir proje müşterileri ve jQuery kullanımı Web sayfaları gerektirir. Müşteriler bir widget inşa <script> birkaç öğeleri içeren tedarik edeceğiz Ekle kod yığını <script>oluşturulan <iframe>. Eğer zaten jQuery en son sürümünü kullanarak değilse, bu da (en) büyük olasılıkla Google <script> jQuery sürümü barındırılan yer alacak.

Bu sorun, bazı müşteriler zaten bir WordPress kullanmak eski bir sürümü yüklü olabilir. Süre bu işe yarayabilir. en azından bir hayli yeni sürüm, bizim kod mu güveniyor bazı son tanıtılan işlev jQuery Kütüphanesi, orada bağlı olmak örneklerini ne zaman bir müşteri jQuery sürümü çok eski. Onlar bir WordPress kullanmak en son sürümüne yükseltme gerektirir edemeyiz.

Bir WordPress kullanmak daha yeni bir sürümü engellemeyecek kurallarımız çerçevesinde, sadece içinde kullanmak için yüklemek için herhangi bir yolu ya da etkiler, müşteri sayfada herhangi bir kod var mı? İdeal olarak, belki bir WordPress kullanmak varlığı için kontrol edebiliriz, sürüm algılamak ve eğer çok eski değilse, o zaman bir şekilde en son sürüm sadece bizim kod için kullanılacak yük.

Fikirlerim yükleme jQuery <iframe> müşterinin etki alanı da içerir bizim <script>, ki öyle görünüyor olabilir mümkün, ama umarım bir daha zarif bir şekilde yapmak (bahsetmiyorum bile olmadan performans ve karmaşıklık cezalar ekstra <iframe>s).

CEVAP
14 EKİM 2009, ÇARŞAMBA


Evet, yapılabilir jQuery. noconflict modu sayesinde. http://blog.nemikor.com/2009/10/03/using-multiple-versions-of-jquery/

<!-- load jQuery 1.1.3 -->
<script type="text/javascript" src="http://example.com/jquery-1.1.3.js"></script>
<script type="text/javascript">
var jQuery_1_1_3 = $.noConflict(true);
</script>

<!-- load jQuery 1.3.2 -->
<script type="text/javascript" src="http://example.com/jquery-1.3.2.js"></script>
<script type="text/javascript">
var jQuery_1_3_2 = $.noConflict(true);
</script>

Sonra, $('#selector').function();, jQuery_1_3_2('#selector').function(); yaparsın ya jQuery_1_1_3('#selector').function(); yerine.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DavidParody

    DavidParody

    17 EKİM 2009
  • Justin Case

    Justin Case

    3 EKİM 2011
  • MrOctopi

    MrOctopi

    6 Aralık 2010