簡體   English   中英

如何有條件地加載jQuery插件?

[英]How to conditionally load a jQuery plugin?

我有一個asp.net UserControl,可以多次添加到頁面。 在這個UserControl上我使用的是一個jQuery插件,我只想加載一次。 我正在使用以下代碼來有條件地加載jQuery本身:

if (typeof jQuery == 'undefined') {
    // load jquery 
    var script = document.createElement('script');
    script.type = "text/javascript";
    script.src = "/_layouts/SprocketValidator/jQuery.js";
    document.getElementsByTagName('head')[0].appendChild(script);
} else {
    //already loaded
}

是否有一個等價的檢查jQuery插件是否未定義? 我使用的插件是digitalBush蒙版輸入插件

嘗試:

if (typeof jQuery.fn.mask == 'undefined')

jquery-methods(通常也是plugin-methods)存儲為$.fn屬性,因此你需要檢查插件中可用的方法(例如mask() )是否被稱為$.fn成員

你可以使用YepNope.js ,你可以在這里找到。 然后,你可以這樣編寫你的javascript:

yepnope({
  test: window.JSON,
  nope: "/_layouts/SprocketValidator/jQuery.js",
  complete: function () {
    var data = window.JSON.parse('{ "json" : "string" }');
  }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM