如何为Office 365(在线)和Outlook(计算机上的本机)之间的相同加载项定义不同的UI控件和文本?
例如,在Office 365在线上,我们希望加载项按钮位于新按钮组中的Outlook上。
如何实现这一目标?
答案 0 :(得分:2)
@Michael Heuberger目前,无法为Outlook Web App和本机Outlook桌面客户端之间的相同加载项定义不同的UI控件和文本(标签)。请向我们的UserVoice页面提交功能请求:https://officespdev.uservoice.com/
答案 1 :(得分:-1)
您的加载项中可以有两个不同的视图 - 一个用于Web,一个用于桌面。为此,定义了以下jQuery函数:
function detectPlatform(platform) {
if (platform == "OfficeOnline") {
$('#WebView').removeClass('display-none').addClass('display-block');
$('#DesktopView').removeClass('display-block').addClass('display-none');
}
else {
$('#DesktopView').removeClass('display-none').addClass('display-block');
$('#WebView').removeClass('display-block').addClass('display-none');
}
}
并在$(document).ready
的{{1}}内拨打,如:Office.initialize
在您的HTML中,您可以拥有2个具有不同UI元素的div容器:
detectPlatform(Office.context.platform);
显然,您还必须定义使用过的CSS类(<div id="WebView">Web UI</div>
<div id="DesktopView">Desktop UI</div>
和display:none
)。如果您不想使用jQuery,那么您当然可以使用纯JS实现相同的目标。