2

我需要知道用户计算机上是否安装了 MS Office 2013 以使用特定方式打开办公文档以从网站进行编辑。

也许有一些特定于 Office 2013 的插件/activex?

我试图找出 Sharepoint 是如何完成这项任务的,但这太棘手了:

this.IsProtocolHandlerEnabled = function(d) {
        if (IsStrNullOrEmpty(d))
            return false;
        if (b[d] != null)
            return b[d];
        if (c)
            return a;
        ...

如果 office 2013 可用,则“a”等于“true”,否则为“false”,但我找不到变量“a”被更改的地方。

4

1 回答 1

7

这种方法在 chrome 中对我有用,您可能必须简化 IE 旧副本的迭代:

var has2013=([].slice.call(navigator.plugins)
    .filter(function(a){return a.name.match("Microsoft Office")})[0].name||"")
    .match(2013)||false;

alert(has2013);
于 2013-07-17T16:26:39.190 回答