window.open设置title问题
由于open打开的界面是一个pdf,所以无法在前端框架生命周期里面写代码,只能获取window新对象进行操作
1.错误方式:使用function openWindow(url,title)
{
var obj=window.open(url);
obj.document.title=title;
}
关于用window.open打开新窗口后设置新窗口的标题
使用document.title来修改window的title值
在实际开发中失效
2.错误方式:
const win = window.open(url);
const title = win.document.head.querySelector(‘title’);
title.innerHTML = winName;
仍无法监控到新开的窗口的状态,设置的title值会被覆盖
3.正确方式:
const win = window.open(url);
//循环监听设置
const loop = setInterval(function () {
if (win.closed) {
clearInterval(loop);
} else {
win.document.title = winName;
}
}, 1000);
监控新开窗口的状态,循环设置title,以保证不被覆盖
此方法试了很多次才得到的结果,并且网上查不到相关的解决办法,希望能帮到大家
在前端开发中,通过window.open打开PDF文件时,设置新窗口标题可能遇到困难。常见方法如直接修改document.title或通过查询选择器设置title无效。一种有效的方法是循环监听新开窗口状态,通过定时器不断设置document.title,直到窗口关闭,从而确保标题不被覆盖。这种方法对于处理PDF窗口标题问题是一种实用的解决方案。
1938





