自定义sharepoint中某些页面的快速启动项

时间:2014-01-17 10:30:24

标签: sharepoint sharepoint-2010 quicklaunch cewp

我有要求客户想要在快速启动时自定义项目  所以,我想在快速启动中更改几个页面的其他项目。(不是关于快速启动的风格。它是关于快速启动中的内容替换)

我希望使用CEWP,我可以实现这一点。但我不太清楚如何做到这一点。

2 个答案:

答案 0 :(得分:1)

您可以在此处使用两种方法:

1)创建一个webpart来替换quicklaunch:这样你就可以从SPWeb中读取导航,并自己构建它。

2)使用jQuery更改加载页面的html。在这种方法中,我将应用'display:none'来快速启动,在html中进行更改,然后'display:block'返回。此解决方案中的骗局是您必须依赖项目的名称/标题/网址,因此如果管理员更改,则可能会破坏它。

答案 1 :(得分:1)

我已按照以下步骤实现目标

1 ..在页面中添加了CEWP

  1. 使用以下脚本创建了一个文本文件,并将其添加到共享dcouments
  2. <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
     <script type="text/javascript">
      function startClock(){
    
        var div= document.getElementById('s4-leftpanel-content');
    
       var spans= div.getElementsByTagName('span');
    
     for (index = spans.length - 1; index >= 0; index--) {
     spans[index].parentNode.removeChild(spans[index]);
    
     }
    
     var urls= div.getElementsByTagName('a');  
     for (index = urls.length - 1; index >= 0; index--) {
      urls[index].parentNode.removeChild(urls[index]);
     }
    
      var pTag = document.createElement('p');
     pTag.innerHTML = "HR Report";
        div.appendChild(pTag);
    
       var aTag = document.createElement('ul');
       div.appendChild(aTag);
    
      var newLi = document.createElement('li');
       aTag.appendChild(newLi);
    
       var a= document.createElement('a');
        a.setAttribute('href',"url");
        a.innerHTML = "report2";
       newLi.appendChild(a);
    
    //do onload work
      }
       if(window.addEventListener){
       window.addEventListener('load',startClock,false); //W3C
        }
        else{
     window.attachEvent('onload',startClock); //IE
    }
    </script>
    

    enter code here

    1. 将网址文本文件粘贴到CEWP中的共享文档中作为内容链接(编辑网页部件&gt;&gt;内容链接&gt;&gt;粘贴网址)
    2. 现在,删除了“快速启动”中的现有项目并添加了新项目