JQueryUI'nin yüklenip yüklenmediğini test etme


130

Bir web sitesinde hata ayıklamaya çalışıyorum ve jQueryUI'nin düzgün yüklenmemiş olabileceğini düşünüyorum. JQueryUI'nin yüklenip yüklenmediğini nasıl test edebilirim?

Yanıtlar:


244
if (jQuery.ui) {
  // UI loaded
}

VEYA

if (typeof jQuery.ui != 'undefined') {
  // UI loaded
}

Hile yapmalı


2
benim sorunum jQuery ve jQuery.ui'yi dinamik olarak yüklemem. Bazen zamanında yüklenir, bazen yüklenmez. Ui yüklü değilse, herhangi bir yöntemi çağırmadan önce onu nasıl bekleyebilirim (veya yüklenmeye zorlayabilirim)?
Gabriel Diaconescu

17
Bunun bir fark yaratıp yaratmayacağından emin değilim, ancak Boilerplate'in jquery testine giderken, window.jQueryjQuery UI için kullanıyorlar Testi kullanıyorumwindow.jQuery.ui
Tim B James

bu benim için çalışmıyor. Birisi lütfen bu jsfiddle'a bir göz atabilir ve yanlış bir şey yapıyorsam bana haber verebilir mi? jsfiddle.net/vEvYv/1 jQuery'yi yüklemediğim için if deyimimin diğerinin çalışmasını bekliyorum. dışında, ilk satırda başarısız olur. Sayfayı tarayıcı konsolunuz açıkken çalıştırın (FF kullanıyorum) ve satırı görünjQuery is not defined
Dave Haigh

2
@DaveHaigh - JQuery'yi yüklemediniz. JQuery UI, JQuery'ye bağlıdır.
Chris Haines

16

Hem jQuery UI Kitaplığı dosyası hem de CSS Temasının yüklenip yüklenmediğini kontrol etmeniz gerekir .

jQuery UI, jQuery nesnesinde özellikler oluşturur, şunları kontrol edebilirsiniz:

jQuery.ui
jQuery.ui.version

Gerekli CSS dosyalarının yüklenip yüklenmediğini kontrol etmek için Firebug kullanmanızı ve CSS sekmesinde tema dosyalarını aramanızı tavsiye ederim .

Daha önce kullanıcılar jQuery UI kitaplığını doğru yüklediğinde ancak CSS teması eksik olduğunda sorunlar görmüştüm.


Bazı belirli işlevlerin yüklenip yüklenmediğini kontrol etmek için kontrol şöyle görünecektir (örneğin araç ipucu için) ........................ if( typeof jQuery().tooltip != "undefined" )
jave.web

7

Bunun eski bir soru olduğunu biliyorum, ancak burada, yalnızca jQuery UI yüklendikten sonra yürütüldüğünden emin olmak için ilişkili bir olayı olmayan tüm jQuery UI öğelerinizi sarmak için kullanabileceğiniz hızlı bir küçük komut dosyası var:

function checkJqueryUI() {
    if (typeof jQuery.ui != 'undefined') {
        do_jqueryui();
    }
    else {
        window.setTimeout( checkJqueryUI, 50 );
    }
}
// Put all your jQuery UI stuff in this function
function do_jqueryui() {
    // Example:
    $( "#yourId" ).dialog();
}
checkJqueryUI();

3

Yalnızca kullanıcı arabirimi nesnesini test edin, ör.

<script src="jquery.js"></script>
<script src="jquery-ui.js"></script>
<script>
  $(function(){
    // did the UI load?
    console.log(jQuery.ui);
  });
</script>

1

JQuery UI'nin yüklü olup olmadığını aşağıdaki gibi birçok yoldan kontrol edebilirsiniz:

if (typeof jQuery.ui == 'undefined') {
   // jQuery UI IS NOT loaded, do stuff here.
}

VEYA

if (typeof jQuery.ui != 'function') {
    // jQuery UI IS NOT loaded, do stuff here.
}

VEYA

if (jQuery.ui) {
    // This will throw an error in STRICT MODE if jQuery UI is not loaded, so don't use if using strict mode
    alert("jquery UI is loaded");
} else {
    alert("Not loaded");
}


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.