Виджет Javascript не работает внутри веб-части Sharepoint - PullRequest
1 голос
/ 11 февраля 2012

У меня есть виджет javascript, который загружает контент с стороннего веб-сайта, и мне нужно использовать его в веб-части sharepoint. Проблема в том, что виджет работает везде (wordpress, другие сайты и т. Д.), Но не внутри веб-части sharepoint.

При вставке в веб-часть после сохранения отображаются только символы, например, $ 0, странно то, что если я вставляю другой виджет, например, твиттер, для извлечения последних твитов, он работает.

Есть ли кто-нибудь, кто мог бы взглянуть на код и сказать мне, если с ним что-то не так? Я новичок с sharepoint, мне пришлось очистить название сайта и URL, потому что проект еще не опубликован ... спасибо!

<link rel='stylesheet' type='text/css' href='xxx/stylesheets/widget.css'/>

<div id='xxx'></div>

<script type='text/javascript'>
var require = document.createElement('script');
require.src= 'xxx/javascripts/require-jquery.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(require);
var xxx = document.createElement('script');
xxx.src= 'xxx/plugins/4f357c414918c20001000003.js';
require.onload = function () {
  $r = jQuery.noConflict();
  (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(xxx);
}
</script>

Ответы [ 2 ]

2 голосов
/ 13 февраля 2012
0 голосов
/ 11 февраля 2012

Я бы предложил включить все элементы веб-части, от которых веб-часть зависит как встроенный ресурс, или в вашу папку _layouts. Это гарантирует, что любые изображения, XML, значки и сценарии работают в нужном месте. Здесь я предполагаю, что require-jquery.js не разворачивается с вашей веб-частью через решение SharePoint (wsp). Также вы должны зарегистрировать свой скрипт на стороне клиента в методе PreRender веб-части или использовать следующий пример для встроенного кода:

<SharePoint:ScriptLink ID="skl" Name="ProjectName/Scripts/require-jquery.js" runat="server" OnDemand="false" Localizable="false" />

Надеюсь, это поможет.

...