前言
当使用异步请求去加载pdf文件时,预览页的title会变成请求的地址,即使修改response的返回信息也无法奏效。
经过调试后发现,viewer.js中默认使用的请求地址作为页面title,因此只需修改这块的代码即可。
修改方法
- 打开viewer.js
- 搜索 setTitleUsingUrl: function pdfViewSetTitleUsingUrl 定位到代码位置
- 复制粘贴如下代码对其进行替换:
setTitleUsingUrl: function pdfViewSetTitleUsingUrl(url) {
this.url = url;
try {
var titleTmp = (TITLE == '' || TITLE == undefined) ?
(decodeURIComponent(pdfjsLib.getFilenameFromUrl(url)) || url) : TITLE;
this.setTitle(titleTmp);
} catch (e) {
// decodeURIComponent may throw URIError,
// fall back to using the unprocessed url in that case
this.setTitle(url);
}
},
- 在加载viewer.js的script上面定义全局变量TITLE
<script type="text/javascript" language="javascript">
var TITLE = "${fileName}";
</script>
<script src="static/js/pdf/viewer.js"></script>
效果展示
- 修改前:
- 修改后: