有效href需用相对路径或绝对URL:同目录用"about.html",子目录用"pages/contact.html",上级用"../index.html",外链必须带协议如"https://example.com",根路径"/assets/js/main.js"仅部署后可靠;锚点跳转需id完全匹配且合法,固定头部需加scroll-margin-top修正;target="_blank"必须配rel="noopener"防攻击;禁用onclick跳转,应使用addEventListener并e.preventDefault()。

直接用 @#@#@#@#@#@#@#@#@#@0
rel="noreferrer" 效果类似,但会隐藏 Referer 头,部分旧版 Safari 不支持window.opener(极少见),应显式评估风险并改用 rel="opener"
rel="noopener" 不影响跳转,但现代审计工具会标为高危别用 onclick="location.href=..." 伪装跳转
这种写法绕过浏览器原生导航机制,后果比看起来严重得多。
- 不记录 history,按返回键无效
- 右键菜单里没有“在新标签页打开”选项
- 不会触发
beforeunload,用户关页前无法弹确认框 - 路径拼错或变量未定义时静默失败,控制台也不报错
- CSP 策略可能直接拦截内联 JS,导致跳转完全失效
- 真要加逻辑,用
+addEventListener,先e.preventDefault()再跳转
最易被忽略的是路径解析时机——开发阶段双击打开 HTML 文件(file:// 协议)和上线后走 HTTP 协议,对 / 开头路径的处理完全不同;还有锚点定位被 CSS transform 或 fixed 头部吃掉的问题,往往调半天才发现是 scroll-margin-top 没设。这些细节不提前踩一遍,上线后就是线上 bug。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











