Webpart 注册

<SharePoint:ScriptLink Language="javascript" ID="jqueryScriptLink" Name="/_layouts/自定义路径/myjs.js" Defer="false" runat="server"/>

EmptyElement 注册

1.在vs中新建sharepoint项目,添加EmptyElement,修改Elements.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <CustomAction Id="ScriptLink.jQuery"
                Title="ScriptLink.jQuery"
                Location="ScriptLink"
                ScriptSrc="~site/MyJSModule/myjs.js"/>
</Elements>

添加Module,添加已经写好的myjs.js文件如下:

function onPageLoad() {
    //自定义js
    }
//将脚本设定为BodyOnload


_spBodyOnLoadFunctionNames.push('onPageLoad');

 添加Module,修改Elements.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Module Name="MyJSModule" Url="MyJSModule">
    <File Path="MyJSModule\jquery-1.7.2.min.js" Url="myjs.js" Type="Ghostable" />
  </Module>
</Elements>

2.对于简单的js可以直接写在CustomAction的ScriptBlock里如下:

 

<
CustomAction Id="ScriptLink.jQuery"
                
  Title="ScriptLink.jQuery"
                
  Location="ScriptLink"
    
  ScriptBlock=" 
    function _jsLoad1(){
     //自定义js
    }
    //将脚本设定为BodyOnload
    _spBodyOnLoadFunctionNames.push('_jsLoad1');
  " />

 

 

最后:

当然向sharepoint中添加自定义js还有很多方法,如把脚本添加到core.js文件里。不过不建议这样做,还是要用上述方法,原因很多如易于维护迁移复用,feature也利于随时停用启用。

js这样注册可以,同样css也可以这样注册。

 

 

努力后就不会后悔

jindahao