1

我在 Intranet 上有一个主页。它有超过 15 个 web 部件(新闻、天气等)。我希望允许用户通过移动 web 部件或删除它们来自定义页面。目前我不让他们看到顶部的功能区,因此他们无权访问“编辑页面”按钮。我已将其从功能区中拉出

<a unselectable="on" href="javascript:;" onclick="return false;" class="ms-cui-ctl-large" aria-describedby="Ribbon.WebPartPage.Edit.Edit.Menu.Actions.Edit_ToolTip" mscui:controltype="Button" role="button" style="height: auto;" id="Ribbon.WebPartPage.Edit.Edit-SelectedItem">
<span unselectable="on" class="ms-cui-ctl-largeIconContainer">
    <span unselectable="on" class=" ms-cui-img-32by32 ms-cui-img-cont-float">
      <img unselectable="on" alt="" src="/_layouts/1033/images/formatmap32x32.png" style="top: -160px; left: -96px;">
    </span>
</span>
<span unselectable="on" class="ms-cui-ctl-largelabel" style="height: auto;">Edit<span unselectable="on"> 
</span>Page</span>
</a>

不幸的是,它不起作用。有什么想法吗?

我也会对“停止编辑”按钮做同样的事情。

4

2 回答 2

0

根据这篇文章:http ://artykul8.com/2011/03/useful-sharepoint-shortcuts/ 诀窍是使用MSOLayout_ToggleLayoutMode();javascript函数。

根据同一页面中的评论,在 SP2010 中,该 javascript 功能仅在页面中已有 Web 部件时可用。我观察到的行为与此行为不同,因为对我而言,此功能仅在页面已处于编辑模式时才有效(即使页面未添加 Web 部件也有效)。

我能够找到定义该函数的 javascript 文件,即 ie55up.js。您可以通过执行以下操作将其加载到您的母版页中:

<SharePoint:ScriptLink language="javascript" name="ie55up.js" OnDemand="false" runat="server" />

有关如何构建使用该 javascript 函数的 Web 控件的信息,请参见此处: http: //www.codeproject.com/KB/sharepoint/SwitchWPMode.aspx

希望这可以帮助

于 2011-08-23T10:30:17.320 回答
0

我终于找到了这个问题的答案。JS调用确定后就很简单了。我相信这应该只适用于 webpart 页面。

通过 Javascript 调用将页面置于个性化编辑模式:

ChangeLayoutMode(true); // how simple is that??

通过 Javascript 调用停止编辑页面:

MSOLayout_ToggleLayoutMode(); // same as given in the other post

我相信“停止”编辑模式对于所有页面都是相同的,无论是个性化页面、所有 webpart 页面等。

于 2011-08-23T16:06:48.733 回答