zoukankan      html  css  js  c++  java
  • SharePoint:ScriptLink测试

    最终结论

    <SharePoint:ScriptLink  ID="SPlink1"  Name="sp.ui.tgportal.js"   Defer="false"  runat="server" OnDemand="false" Localizable="true" />
    defer: 决定是否及时输出,默认为“false”,“true”为最后输出;
    OnDemand:

    决定是否由“RegisterSod”进行注册,如果使用注册,则页面加载完后不马上加载js,而是在调用函数前要进行加载,比如使用SP.SOD.executeFunc("sp.ui.tgportal.js", null, alert(0));

    Localizable: 决定是否要在2052中查找js,false是直接在layouts中查找;
    LoadAfterUI: 决定在head中输出还是在body完成前

    参考:http://www.ilovesharepoint.com/2010/08/sharepoint-scripts-on-demand-spsod.html

             Sharepoint JS CSS 注册

    2011-12-30添加

    SharePoint:ScriptLink在内部调用的也是  ClientScript.RegisterStartupScript RegisterClientScriptBlock RegisterClientScriptInclude

    通过js路径来判断是否未重复注册

    page2.ClientScript.RegisterStartupScript(typeof(ScriptLink), str, info.ToScriptBlock(page));

    str = ExtractFilename(name) + localizable.ToString();

    =========================================================

                             部分测试数据

    =========================================================

    <SharePoint:ScriptLink ID="SPlink1" Name="sp.ui.tgportal.js" Defer="false" runat="server"  />
    </head>

    结果: header附近

    25:document.write('<script type="text/javascript" src="/_layouts/2052/init.js?rev=rcZULplQ2sjYL0GwamiLEQ%3D%3D"></' + 'script>');
    26:document.write('<script src="/_layouts/2052/sp.ui.tgportal.js?rev=pLpSQ6vSUCg3DEmdOme1fQ%3D%3D"></' + 'script>');

    =========================================================

    <SharePoint:ScriptLink ID="SPlink1" Name="sp.ui.tgportal.js" Defer="true" runat="server" />
    </head>

    结果: RegisterSod之前

    <script type="text/javascript">
    // <![CDATA[
    document.write('<script src="/_layouts/2052/sp.ui.tgportal.js?rev=pLpSQ6vSUCg3DEmdOme1fQ%3D%3D"></' + 'script>');
    // ]]>
    </script>
    <script type="text/javascript">RegisterSod("sp.core.js",…

    =================================================================

    <SharePoint:ScriptLink  ID="SPlink1"  Name="sp.ui.tgportal.js"   Defer="true"  runat="server" OnDemand="true" /></head>

    <SharePoint:ScriptLink  ID="SPlink1"  Name="sp.ui.tgportal.js"   Defer="false"  runat="server" OnDemand="true"  />

    结果:

    <script type="text/javascript">RegisterSod("core.js", "\u002f_layouts\u002f2052\u002fcore.js?rev=KpeTWMrqjCSYYu4RiO0\u00252B1Q\u00253D\u00253D");</script>
    <script type="text/javascript">RegisterSod("sp.ui.tgportal.js",

    ==========================================================

    <SharePoint:ScriptLink  ID="SPlink1"  Name="sp.ui.tgportal.js"   Defer="true"  runat="server" OnDemand="false" Localizable="true" />

    </head>

    结果:

    <script type="text/javascript">
    // <![CDATA[
    document.write('<script src="/_layouts/2052/sp.ui.tgportal.js?rev=pLpSQ6vSUCg3DEmdOme1fQ%3D%3D"></' + 'script>');
    // ]]>
    </script>
    <script type="text/javascript">RegisterSod("sp.core.js",

    ===========================================================

    <SharePoint:ScriptLink  ID="SPlink1"  Name="sp.ui.tgportal.js"   Defer="false"  runat="server" OnDemand="false" Localizable="true" />

    结果:

    25:document.write('<script type="text/javascript" src="/_layouts/2052/init.js?rev=rcZULplQ2sjYL0GwamiLEQ%3D%3D"></' + 'script>');
    26:document.write('<script src="/_layouts/2052/sp.ui.tgportal.js?rev=pLpSQ6vSUCg3DEmdOme1fQ%3D%3D"></' + 'script>');

  • 相关阅读:
    jQuery轮播图(一)轮播实现并封装
    openSUSE 12.3 默认启动项
    最大堆(最小堆)
    二叉树基本操作续二:前序、中序、后序遍历(非递归 迭代方式)
    二叉树基本操作续一:二叉树建立、节点数统计
    二叉树基本操作:前序、中序、后序遍历(递归方式)
    Android如何打印std::cout/printf(重定向stdout)
    textarea高度跟随文字高度而变化
    箭头函数与普通函数的区别
    浏览器兼容问题
  • 原文地址:https://www.cnblogs.com/ruijian/p/2224651.html
Copyright © 2011-2022 走看看