网页中编辑word时,只显示指定用户的痕迹
关于根据用户名显示痕迹,如何控制传入一个用户名,然后对应显示该用户的所修改的痕迹?对于会VBA的人来说方法很简单,但是VBA只可以解决一个文档的问题,在web项目的开发中怎么用程序动态的控制呢?其实也简单,主要用下面的这个函数:
<SCRIPT language="JavaScript">
function showRevisionsOnly(user)
{
var obj = document.getElementById("SOAOfficeCtrl");
obj.Document.ActiveWindow.ToggleShowAllReviewers();// 隐藏所有的痕迹
obj.Document.ActiveWindow.View.Reviewers(user).Visible = true;
}
</SCRIPT>
补充说明:SOAOffice是一个第三方的中间件,可以处理在线编辑、保存、留痕、手写、动态生成文件等功能,详细内容去百度一下……,目前说的这个方法就是用soaoffice打开文件以后,控制实现只显示指定用户痕迹的功能,如果你们用的不是这个中间件,这些代码就不用看了,找其他的方法吧。
在OnDocumentOpened事件中控制只显示某个用户的痕迹,比如只显示“张三”的痕迹代码如下:
<SCRIPT language="JavaScript" event="OnDocumentOpened(str, obj)" for="SOAOfficeCtrl">
showRevisionsOnly(“张三”);
</SCRIPT>
当然实际应用中肯定是传变量,不是直接写“张三”了……
看一下效果代码:http://ishare.iask.sina.com.cn/f/10345404.html