测试jQueryUI是否已加载

时间:2010-02-14 05:42:15

标签: javascript jquery-ui

我正在尝试调试网站,我认为jQueryUI可能没有正确加载。如何测试jQueryUI是否已加载?

5 个答案:

答案 0 :(得分:239)

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

OR

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

应该做的伎俩

答案 1 :(得分:16)

您需要检查是否同时加载了jQuery UI Library 文件和 CSS Theme

jQuery UI在jQuery对象上创建属性,您可以检查:

jQuery.ui
jQuery.ui.version

要检查是否已加载必要的CSS文件,我建议您使用Firebug,并在CSS选项卡上查找主题文件。

我之前遇到过问题,当用户正确加载jQuery UI库但缺少CSS主题时。

答案 2 :(得分:7)

我知道这是一个老问题,但是这里有一个快速的小脚本,您可以用它来包装所有没有关联事件的jQuery UI,以确保它们只在加载jQuery UI后才能执行: / p>

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 :(得分:3)

只测试ui对象,例如

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

答案 4 :(得分:1)

您可以通过多种方式检查是否加载了jQuery UI,例如:

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

OR

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

OR

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");
}