使用SharePoint功能或物理文件部署jQuery?

时间:2009-01-28 16:03:43

标签: jquery sharepoint

我们即将对SharePoint进行相当大的自定义,我想在双脚跳入之前获得一些反馈。我们正在努力解决的问题之一就是我们将jQuery javascript库直接部署到12个hive(使其在每个站点的_layouts中可用)或者我们将其包装在一个功能中并为每个功能激活该功能现场?我还看到CodePlex上的两个项目将它包含在功能中,这可能是我想的第三个选项。

思想?

5 个答案:

答案 0 :(得分:13)

www.sharepointblogs.com

的选项和评论

点击上面的链接或谷歌。

总结是直接修改12个配置单元很容易但不受支持(即Microsoft保留随意破坏环境的权利)

上面链接的推荐选项是:

  

使用AdditionalPageHead Delegate Control(我最喜欢的!)

     

通过提供所有开箱即用的母版页使用的AdditionalPageHead Delegate Control的内容,您可以确保所有SharePoint页面都加载了jQuery库。 AdditionalPageHead Delegate Control允许多个控件提供内容,因此它是一个很好的可扩展性方案。为此,您需要构建一个Web用户控件(ASCX文件),其中包含用于加载jQuery库的脚本标记:

<%@ Control Language="VB" ClassName="jQueryControl" %>

答案 1 :(得分:6)

您还可以使用Google AJAX Libraries API。通过向SharePoint母版页添加一些脚本(例如),您可以从Google下载任何您喜欢的jQuery版本,而无需部署.js文件。

还有许多潜在的速度提升:

  • Google的jQuery .js文件可能已在用户浏览器中缓存(感谢使用此工具的其他网站)
  • 浏览器通常只允许一定数量的连接到同一服务器,因此这允许另一个连接并行打开
  • 该文件是从用户最近的地理位置下载的(我认为)

这是一个越来越受欢迎的解决方案,我听到的只有好消息。请查看:http://code.google.com/apis/ajaxlibs/

答案 2 :(得分:1)

我会说这取决于你的情况。如果您只想使jQuery库可用于单个站点,则可以使用功能。如果你想让它全局可用,那么将它部署到12是可行的方法。

答案 3 :(得分:1)

我们将其部署到12个配置单元作为我们免费的SharePoint Infuser工具的一部分,您可能需要考虑将JavaScript(包含JQuery)一次性部署到多个页面,而不对masterpages,core.js等进行任何混乱的更改

在内部,它使用上面Ric提出的委托控制方法,它只是一个更通用的解决方案,可以用于各种目的。

有关详细信息,请参阅http://www.muhimbi.com/blog/2009/07/massage-sharepoint-into-submission.html。有关这一点的一个非常有力的示例,请参阅http://www.muhimbi.com/blog/2009/07/automatically-add-search-as-you-type-to.html

答案 4 :(得分:1)

相关问题