document.title赋值是唯一有效方式,需确保dom就绪、同步更新history.state、检查构建插件覆盖、控制标题长度与字符安全。

document.title 赋值就能改,但时机、同步、SEO 和字符处理这四块不注意,标题就“看起来改了,实际没生效”。
为什么 document.querySelector('title').textContent = '新标题' 不起作用
浏览器标签栏标题和 DOM 中的 <title></title> 节点是两套机制。修改 DOM 节点只影响 HTML 结构树,不会触发浏览器 UI 层的标题刷新。实测中,哪怕你用 innerHTML 或 replaceChild 重写整个 <title></title> 标签,标签页文字依然不变。
唯一被浏览器识别并立即响应的方式只有:
-
document.title = '新标题'—— 直接赋值,无须 DOM 查询 - 必须确保脚本执行时
document已可用(推荐在DOMContentLoaded后或
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











