我正在尝试调试一个网站,我认为 jQueryUI 可能没有正确加载。如何测试 jQueryUI 是否已加载?
测试 jQueryUI 是否已加载
IT技术
javascript
jquery-ui
2021-02-23 21:20:54
5个回答
if (jQuery.ui) {
// UI loaded
}
或者
if (typeof jQuery.ui != 'undefined') {
// UI loaded
}
应该做的伎俩
您需要检查是否正在加载jQuery UI库文件和CSS 主题。
jQuery UI 在 jQuery 对象上创建属性,您可以检查:
jQuery.ui
jQuery.ui.version
要检查是否加载了必要的 CSS 文件,我建议您使用Firebug,并在 CSS 选项卡上查找主题文件。
我以前见过问题,当用户正确加载 jQuery UI 库但缺少 CSS 主题时。
我知道这是一个老问题,但这里有一个快速的小脚本,您可以使用它来包装所有没有关联事件的 jQuery UI 内容,以确保它们仅在 jQuery UI 加载后才被执行:
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();
只需测试 ui 对象,例如
<script src="jquery.js"></script>
<script src="jquery-ui.js"></script>
<script>
$(function(){
// did the UI load?
console.log(jQuery.ui);
});
</script>
您可以通过多种方式检查 jQuery UI 是否已加载,例如:
if (typeof jQuery.ui == 'undefined') {
// jQuery UI IS NOT loaded, do stuff here.
}
或者
if (typeof jQuery.ui != 'function') {
// jQuery UI IS NOT loaded, do stuff here.
}
或者
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");
}