2016-04-24 35 views
0

在我正在研究的S​​harePoint项目中,显示文件时,我们有一个按钮来打开用户在办公室看到的SPFile
目前,该按钮仅适用于IE。我必须使它可用于Chrome和Firefox(目前它只是保存文件,而不是在这些浏览器中打开它)。
我知道这是可能的,因为当您从SharePoint主页打开文件时,它在办公室中打开。
我已经搜索了解决方案,发现一个使用应用程序URL协议的词here,但不幸的是,这并不适用于我的情况,因为我需要知道用户何时关闭文档以刷新显示更改的年龄:(编辑SharePoint网站中的办公室按钮

这里是我们使用的代码(注意,该链接是通过javascript

<a id="OfficeUrl" onclick="g_varSkipRefreshOnFocus = 0;fromOffice = true;if(isIE){window.onfocus = RefreshOnFocus;browseris.ie=true;}DispEx(this, event, 'TRUE', 'FALSE', 'FALSE', 'SharePoint.OpenDocuments.3', '1', 'SharePoint.OpenDocuments', '', '', $('[id$=CheckedOutUserHidden]').val(), $('[id$=UserIdHidden]').val(), '0', '0', '0x7fffffffffffffff', '', '');if(!isIE){window.onfocus = RefreshOnFocus;}g_varSkipRefreshOnFocus = 0;return false;" href="" style="display: none;"></a> 

[编辑]叫我忘了告诉你,我们引用SP.CORE.jsSP.INIT.js(但是他们似乎不同于那些位于\layouts\15\sp.init.js - 厕所因为sp.init.js的版本是14.0.4762

回答

0

我能够使它在铬中工作。 我所做的是我用\_layouts\15\CORE.js\_layouts\15\INIT.js和我包围了一个标签与

<div ctxname="ctx1" app="ms-word"> 
    <a id="OfficeUrl" onclick="g_varSkipRefreshOnFocus = 0;fromOffice = true;if(isIE){window.onfocus = RefreshOnFocus;browseris.ie=true;}DispEx(this, event, 'TRUE', 'FALSE', 'FALSE', 'SharePoint.OpenDocuments.3', '1', 'SharePoint.OpenDocuments', '', '', $('[id$=CheckedOutUserHidden]').val(), $('[id$=UserIdHidden]').val(), '0', '0', '0x7fffffffffffffff', '', '');if(!isIE){window.onfocus = RefreshOnFocus;}g_varSkipRefreshOnFocus = 0;return false;" href="" style="display: none;"></a> 
</div> 

希望它可以帮助别人

我现在需要知道如何做到这一点的Firefox(貌似共享点不不支持它,因为它不能从共享点打开)。

相关问题