如何跳转到另一个文件里的html页面

12次阅读

最直接方式是用跳转同目录 html 文件;路径需准确,区分大小写;可拼接 query 参数传递简单信息;动态跳转可用 window.location.href;404 多因路径错误,应通过 network 面板验证请求 url。

如何跳转到另一个文件里的 html 页面

<a></a>

  • 如果它在子文件夹 href 下,路径就得是 about.html
  • 如果它在上一级目录,用 <a href="about.html"> 关于我 </a>:比如当前在 pages/,要跳到根目录的 <a href="pages/about.html"> 关于我 </a>,就写 ../
  • 注意:路径区分大小写,pages/index.htmlcontact.html 在 Linux 或 macOS 服务器上是两个不同文件。

    跳转时保留或传递参数(query string)

    HTML 页面之间不能直接传变量,但可以通过 URL 参数“捎带”简单信息,比如 ID、分类、来源标记等。

    • 手动拼接:从 <a href="../contact.html"> 联系我 </a> 跳到 About.html,写成 about.html
    • list.html 是 HTML 实体,不是 detail.html?id=123&from=list,否则解析会出错;实际渲染后 URL 中显示为 <a href="detail.html?id=123&from=list"> 查看详情 </a>
    • 目标页用 JavaScript 读取:&,注意浏览器兼容性(IE 不支持)

    别指望靠这个传对象或长文本——URL 长度有限,且参数明文可见。

    用 JavaScript 的 & 跳转

    适合需要动态计算路径、加逻辑判断、或响应按钮点击等非链接场景。

    立即学习 前端免费学习笔记(深入)”;

    • 基础写法:&
    • 带参数示例:new URLSearchParams(window.location.search).get('id')(注意 XSS 风险,若 window.location.href 来自用户输入,得先转义或校验)
    • window.location.href = "help.html"; 的区别:它不经过浏览器历史栈的“自然点击”流程,某些 SPA 框架或拦截逻辑可能不触发;但普通静态页完全没问题

    别用 window.location.href = "result.html?score=" + score; 除非真要新开窗口——多数情况它会被弹窗拦截器挡住,体验反而差。

    常见 404 错误和路径陷阱

    跳转失败,八成是路径错了,而不是代码语法问题。

    • 开发时用 VS Code 等编辑器右键“Copy Relative Path”,粘贴进 score 最稳;别靠脑子记层级
    • 服务器部署后路径可能变:本地双击打开 <a></a> 协议下相对路径行为和 HTTP 服务不同,务必用本地服务器(如 window.open())测试
    • 检查浏览器开发者工具 Network 标签页,看请求的 URL 是什么、状态码是不是 404,再反推路径漏了哪级 href 或拼错了文件名
    • Windows 下文件资源管理器默认隐藏扩展名,容易误以为是 file://,其实是 python3 -m http.server——确认文件真实后缀

    路径问题没有银弹,唯一靠谱的做法是:每次改完立刻点一下,看 Network 里发出去的请求对不对。其他都是猜。

    text=ZqhQzanResources