首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

使用feature暗藏sharepint 2013 菜单选项,比如“网站内容”

2014-01-05 
使用feature隐藏sharepint 2013 菜单选项,比如“网站内容”?xml version1.0 encodingutf-8?Element

使用feature隐藏sharepint 2013 菜单选项,比如“网站内容”
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/"> 
  <CustomAction
 Location="ScriptLink"
ScriptBlock="                       
            function loadjQueryScripts(src) {          
                      
                      var head = document.getElementsByTagName('head')[0];          
                      var script = document.createElement('script');          
                      script.type = 'text/javascript';           
                      script.src = src;           
                      head.appendChild(script);  
            }                   
           function hideSiteActions() {
            var menuItems = document.getElementsByTagName('ie:menuitem');
                for (var key in menuItems)
                {
                 if (key.endsWith('ViewAllSiteContents'))
                  menuItems[key].hidden = true;
                }
          }         
          _spBodyOnLoadFunctionNames.push('hideSiteActions');
"
 Sequence="10001">
  </CustomAction>
</Elements>

可js代码并没有做到这隐藏这一点。在sp2013里面隐藏菜单选项,该怎么隐藏,请求帮助。(只允许用feature)
[解决办法]
你的问题需要自己分析下: 
1. 是JavaScript没有执行吗? 可以按F12看看你的Javascript 有没有加载
2. 如果JavaScript执行,debug下,看看JS是否找到了ViewAllSiteContents 菜单,如果没有要分析为什么了
3. 如果找到了ViewAllSiteContents 菜单,但是menuItems[key].hidden = true; 不Work,那就需要分析这个为啥不Work了,查下MSDN或这Google 下,是不是不支持这种方式了。





[解决办法]
hidden属性好使吗?试试吧ie:menuitem那个DOM删掉
menuItems[key].parentNode.removeChild(menuItems[key])
[解决办法]
你的Key的值不对。
在浏览器中直接执行“document.getElementsByTagName('ie:menuitem');”
是可以得到menu的数组的,但是循环的时候,key是一个menuitem对象啊,试一下key.id.endsWith('ViewAllSiteContents')
[解决办法]
以action方式写feature

热点排行