微软提供了一个在线预览的页面,https://view.officeapps.live.com/op/view.aspx?src=
在 PC、移动端 表现都很好,不过在移动端会存在一个问题,估计是因为在移动端的样式不一样,所以使用这个方式预览之后,会重定向到另一个页面,而 里面的 js 是直接 window.top.href 来给浏览器最上层重定向的。即便我用 iframe 嵌套也会让我当前的页面其他内容看不见了。
1.开始想着直接把重定向之后的地址拿出来,看看能不能直接拼装成这种地址。尝试之后发现,这个地址是实时生成的,没办法拼
1
gee1k OP 各位有什么好的办法吗?
|
2
gee1k OP |
3
gee1k OP Chrome 通过 DevTool 模拟移动端访问就可以复现这个问题
|
4
mmdsun 2018-10-28 22:05:32 +08:00 via Android
这个预览就是 office online server 吧。可以自己搭建一个 office online server 2016
|
5
gee1k OP @mmdsun 搭建的也是这个服务吧,那应该也就会出现同一个问题,这个重定向的原因应该是因为移动端屏幕小,需要一个跟紧凑一点的布局页面来显示内容。
是不是自己部署能修改里面的代码,其实只要能把里面的 window.top.href 改成 window.href 就能在外面通过 iframe 解决了 |
6
kslr 2018-10-28 23:57:09 +08:00 via Android
预览 pdf 不行吗
|
7
maxoxo 2018-10-28 23:59:16 +08:00 via Android
直接用 Google doc 打开?
|
10
autoxbc 2018-10-29 01:08:38 +08:00
在服务器上读页面
https://view.officeapps.live.com/op/view.aspx?src=http%3A%2F%2Fteacher.91yixi.com%2FW008%2F1.xls 处理 html,过滤出 _iframeUrl,返回给前端插入 iframe |
12
gee1k OP @geelaw 感谢,这也是一种方法。但在我这个业务里可能不太实用,我这边的文件都是用户从 PC、移动端自己上传的文件。不可能做到每次打开一下文件 share 一下😟
|
13
xjm998 2019-05-30 21:46:54 +08:00
Web 表格? 雷鸟 365 了解下。
|