想法:使用window.open打开一个标签页,但是发现有些标签页的title是一串长长的ip,因此想自己命名这个标签页的title。
尝试:在网上搜索到有说法说可以利用window.open的第二个参数(name),但是经过尝试发现这个参数,只是会自动跳转到已经打开且title相同的标签页,并非修改标签页的title。
解决方案:
利用window.open函数会返回打开的标签页的window来进行操作,要使用此方法需要注意,必须得是相同的域下边才能操作。
如在百度页面下,
let test = window.open('www.baidu.com')
用变量test接受window.open返回的值,可以看到返回的值是一个window,window有一个onload属性,它是标签页加载完成后会触发的回调函数。

这里在控制台测试,直接用window.document.title对标签页的title进行修改。

但是在实际打开页面的时候要注意:需要在回调函数里对标题进行修改,不在加载完成的回调函数里进行修改是无效的。
let test = window.open('www.baidu.com')
test.onload = function () {
test.document.title = menu.menuName
}
通过window.open打开的网页默认标题不理想,尝试利用name参数跳转未成功。解决办法是利用返回的window对象,在onload回调中修改document.title,确保在页面加载完成后修改标题才有效。
1947

被折叠的 条评论
为什么被折叠?



