【问题标题】:check if jQuery UI is loaded [duplicate]检查是否加载了 jQuery UI [重复]
【发布时间】:2011-11-08 15:31:03
【问题描述】:

可能重复:
Testing if jQueryUI has loaded

如何检查页面上是否加载了jQuery的jQuery UI扩展库?

【问题讨论】:

  • 你见过这个问题吗? stackoverflow.com/questions/2260250/…
  • 哇,stackoverflow 的搜索功能太糟糕了..在发布此内容之前我真的环顾四周,很惊讶之前没有人问过这个问题。 10 倍。
  • 如果可以的话,我会删除这个问题...不需要副本。
  • 警报($.ui.version) ;

标签: javascript jquery jquery-ui


【解决方案1】:
if (typeof jQuery.ui !== 'undefined') ...

应该可以。

另见this SO post

【讨论】:

  • @vsync: I stronly disagree(使用左侧的 jQuery UI 复选框并点击“运行”)
  • (typeof jQuery.ui === 'function') 消除歧义。
  • 我同意@vsync。如果 jQuery 和 UI 都没有加载,这里就会出现误报。 那个答案,即使自 6 年以来被接受/赞成 28 次,是错误的typeof(jQuery.ui) 的正确类型是 object。像tabs 这样的属性是function。如果 UI 未加载,typeof(jQuery.ui.tabs) 将抛出关于未定义属性的错误。 所以最好的测试是 if(typeof(jQuery.ui) == "object") { if(typeof(jQuery.ui.tabs) == "function"){ console.log("jQuery-UI loaded")}}。 -- 注意需要嵌套的 if 条件是为了避免未定义的属性错误。
【解决方案2】:

可以检查:

$.ui

或者获取版本:

$.ui.version

【讨论】:

    【解决方案3】:

    只要确保将调用它的所有代码都放在 $(document).ready() 中即可。此时,所有内容都应该加载到页面上。

    【讨论】:

    • 我总是在底部使用脚本(在关闭 BODY 标签之前)。另外,我想知道页面上是否有 UI 脚本,因为这是一个未知因素
    • 加载了 jQuery 并不意味着加载了 jQuery UI(例如,找不到资源、加载问题等)
    猜你喜欢
    • 2012-05-18
    • 1970-01-01
    • 1970-01-01
    • 2011-08-29
    • 2011-11-12
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    • 2016-01-20
    相关资源
    最近更新 更多