0

我有客户想要为某些页面自定义快速启动项目的要求。所以,我想将快速启动中的项目更改为几页的其他项目。(不是关于改变快速启动的样式。它关于快速启动替换内容)

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

4

2 回答 2

1

你可以在这里有两种方法:

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

2)使用jQuery改变加载页面的html。在这种方法中,我将应用“显示:无”来快速启动,在 html 中进行更改,然后返回“显示:阻止”。此解决方案的缺点是您必须依赖项目的名称/标题/网址,因此如果管理员更改,它可能会破坏它。

于 2014-01-17T16:02:49.560 回答
1

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

1..在页面中增加了一个CEWP

  1. 使用以下脚本创建了一个文本文件并将其添加到共享文件中
<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 中共享文档中的 url 文本文件粘贴为内容链接(编辑 web 部件>>内容链接>>粘贴 url)

现在,快速启动中的现有项目被删除并添加了新项目

于 2014-01-20T10:57:40.470 回答