Развернуть jQuery с помощью функции SharePoint или физических файлов? - PullRequest
15 голосов
/ 28 января 2009

Мы собираемся провести довольно большую настройку SharePoint, и я хотел бы получить некоторую обратную связь, прежде чем перейти обеими ногами. Одна из проблем, над которой мы работаем, заключается в том, чтобы развернуть библиотеку jQuery javascript непосредственно в 12 кустах (сделать ее доступной в _layouts для каждого сайта и т. Д.), Или мы завернули ее в функцию и активировали эту функцию для каждого сайт? Я также видел два проекта на CodePlex, которые обертывают его в функции, и это может быть третий вариант, я думаю.

Мысли

Ответы [ 5 ]

13 голосов
/ 28 января 2009

параметров и комментариев www.sharepointblogs.com

Перейдите по ссылке выше или Google.

Сводка о том, что непосредственное изменение улья 12 легко, но не поддерживается (т. Е. Microsoft оставляет за собой право уничтожать вашу среду по своему желанию)

рекомендуемая опция по вышеуказанной ссылке:

Используйте элемент управления Delegate AdditionalPageHead (мой любимый!)

Предоставляя содержимое для элемента управления Delegate AdditionalPageHead, который используется всеми готовыми главными страницами, вы можете убедиться, что библиотека jQuery загружена всеми страницами SharePoint. Элемент управления AdditionalPageHead Delegate позволяет нескольким элементам управления предоставлять содержимое, поэтому это отличный сценарий расширяемости. Для этого вам нужно создать пользовательский веб-элемент управления (файл ASCX), который содержит тег script для загрузки библиотеки jQuery:

<%@ Control Language="VB" ClassName="jQueryControl" %>
6 голосов
/ 28 января 2009

Вы также можете использовать API библиотек Google AJAX. Добавив некоторый сценарий на свою главную страницу SharePoint (например), вы можете загрузить любую версию jQuery, которую вы предпочитаете, из Google без необходимости развертывания файла .js.

Существует также множество потенциальных улучшений скорости:

  • Файл Google jQuery .js уже может быть кэширован в браузере пользователей (благодаря другим сайтам, использующим эту возможность)
  • браузеры обычно разрешают только определенное количество подключений к одному и тому же серверу, поэтому это позволяет параллельно открывать другое подключение
  • файл скачивается с пользователей ближайшего географического местоположения (я думаю)

Это все более популярное решение, о котором я слышал только хорошие вещи. Проверьте это по адресу: http://code.google.com/apis/ajaxlibs/.

1 голос
/ 29 апреля 2011

Мне не удалось получить код с www.sharepointblogs.com для работы. Мне повезло больше по этой ссылке http://blogs.msdn.com/b/kaevans/archive/2011/04/06/adding-jquery-to-every-page-in-sharepoint-with-delegate-controls.aspx

1 голос
/ 31 июля 2009

Мы развернем его в 12-м улье как часть нашего бесплатного инструмента SharePoint Infuser, который вы можете рассмотреть для развертывания JavaScript (в том числе JQuery) на нескольких страницах за один раз, без каких-либо грязных изменений в masterpages, core.js и т. Д. .

Внутренне он использует подход управления делегатами, предложенный Риком выше, это просто более общее решение и может использоваться для любых целей.

Подробнее см. 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

.
1 голос
/ 06 июля 2009

Я бы сказал, что это зависит от вашего сценария. Если вы хотите сделать библиотеку jQuery доступной только для одного сайта, лучше использовать компоненты. Однако, если вы хотите сделать его доступным в глобальном масштабе, лучше всего развернуть его до 12.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...