如何在SharePoint中管理Jquery以避免与其他jquery版本冲突

时间:2011-08-12 05:35:34

标签: jquery sharepoint jquery-ui

目前我正在为SharePoint开发一个webpart。我在我的webpart中使用JQuery。用户将安装我的webpart并在sharepoint站点中使用它。我是JQuery的新手。我有几个困惑。

1)假设SharePoint网站中已安装了其他一些webpart。因此,我将如何管理和使用JQuery和Jquery UI,以便它不会与页面中其他webpart(来自其他供应商)使用的其他Jquery / JQuery UI插件冲突。

2)您能否准确地解释我两个不同版本的JQuery / Jquery UI如何在同一页面中工作。我正在使用jQuery v1.5和JQuery UI v1.8。

目前我使用下面的代码包含jquery和jquery Ui lib,当我使用$(selector).opetaions()。opetaions()编写代码时,一切正常。但是我有上述困惑。

public static void IncludeScript(Page page, String key, String location)
        {
            if (!page.ClientScript.IsClientScriptIncludeRegistered(key))
                page.ClientScript.RegisterClientScriptInclude(key, location);
        }

        public static void LoadCSS(Page page, String src)
        {
            HtmlLink css = new HtmlLink();
            css.Href = src;

            css.Attributes["rel"] = "stylesheet";
            css.Attributes["type"] = "text/css";
            css.Attributes["media"] = "all";

            page.Header.Controls.Add(css);
        }

请通过分享您的想法指导我。

感谢。

2 个答案:

答案 0 :(得分:3)

这里有几个风险:

  1. 与其他jQuery版本冲突的风险
  2. 删除已由另一个Web部件(或页面本身)安装的jQuery插件的风险
  3. 另一个Web部件(或页面本身)删除Web部件安装的jQuery插件的风险
  4. 要防止3 /,您可以在自己的代码中使用noConflict(true)(注意“true”参数): http://api.jquery.com/jQuery.noConflict/

    要防止1 /和2 /,您需要在加载自己的版本之前检查页面上是否已存在(window.jQuery)。

答案 1 :(得分:1)

是的,您可以使用多个版本的jQuery。看这篇文章:

Can I use multiple versions of jQuery on the same page?