使用 #hash 从地址栏刷新页面

2023-12-30

情况:

url: http://mydomain.com/test.html#somehash http://mydomain.com/test.html#somehash

测试脚本:

$(document).ready(function () {
    console.log("page initiated");
    if (window.location.hash) {
        console.log("hash changed (if-statement)");
    }

    $(window).on("hashchange", function () {
        console.log("hash changed (on statement)");
    });

});

该脚本也可以在fiddle http://jsfiddle.net/djwave28/dcVu8/2/,但环境不适合展示该行为。

我遇到的问题是,当我单击浏览器地址栏并按 Enter 键而不进行任何更改时。

  1. 当浏览器 URL 带有主题标签时,页面不会重新启动。document.ready没有被解雇,我没有收到任何控制台消息。

  2. 当浏览器 URL 没有主题标签时,页面会重新启动并document.ready被解雇了。

有人对此行为有解释吗?是否可以捕获它,以便在情况 1 中页面重新加载? 某处有文档吗,因为我似乎找不到任何文档?


这是期望的行为。如果您的 URL 包含哈希字符串,则不应启动全页刷新。

将哈希添加到 URL 表示您要在页面内导航,而不是导航到新页面。单击“刷新”按钮表示您要重新请求该文档。在 URL 栏上按 Enter 键和单击刷新是完全不同的事情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 #hash 从地址栏刷新页面 的相关文章

随机推荐

  • DllImport、Char*& 和 StringBuilder C/C#

    我有一个问题 我尝试查看几乎所有的海报解决方案 但未能找到合适的解决方案 问题很简单 想要在我的托管 C 中从非托管 C 代码返回字符串 c 函数为 extern C declspec dllexport int process batch
  • PHPMailer 调试消息

    我正在使用 PHPMailer 我想在我的数据库中保存一些调试信息 下面的代码显示了如何在使用 SMTP 服务器时保存调试信息 如下所示 mail gt SMTPDebug SMTP DEBUG SERVER mail gt SMTPDeb
  • 如何使用 angularjs 在视图中检查 ng-if 值是否为 null?

    我有这种情况 div div i class icon ion checkmark i div div but test view null不起作用 也不只是检查test view or test view 有任何想法吗 thanks ed
  • Pycharm(Python IDE)只能显示列表的前 300 个成员

    当我用超过 300 个元素填充列表时 我用来读取 Python 的工作环境 Pycharm 将仅显示前 300 个元素 这适用于社区版和专业版 有谁知道如何解决这个问题 如果没有 是否有人知道可以显示列表中所有元素的 IDE 即使该列表有
  • 在嵌套 Python 字典中搜索键

    我有一些像这样的Python字典 A id idnumber condition e g A 1 11 567 54 2 14 123 13 我需要搜索字典是否有idnumber 11并计算一些东西condition 但如果整个字典里没有i
  • VB.NET 私​​有字段的命名约定

    VB NET 中是否有命名私有字段的官方约定 例如 如果我有一个名为 Foo 的属性 我通常将私有字段称为 Foo 这在国内似乎是不被允许的官方指南 http msdn microsoft com en us library ms22901
  • 如何将 SQL Server .bak 文件导入 MySQL?

    标题是不言自明的 有没有办法直接进行此类导入 来自 SQL Server 的 BAK 文件采用 Microsoft 磁带格式 MTF 参考 http www fpns net willy msbackup htm http www fpns
  • JWT如何在授权服务器之外进行验证

    最近 我尝试使用 JSON Web Token JWT 作为访问令牌来实现 OAuth2 0 服务器 我对 JWT 的独立功能感到非常困惑 我注意到 JWT 可以在任何地方进行验证 而不是强制在授权服务器中进行验证 因为它是独立的 这个功能
  • JSP中如何获取完整的URL

    我如何获得 JSP 页面的完整 URL 例如 URL 可能是 如果我执行以下操作 我总是得到 news jsp 而不是 do out print request getServletPath out print request getReq
  • 使用 javascript 确定 javascript 中的堆栈深度

    有没有办法通过使用 javascript 本身来确定在 javascript 中执行的所有函数的堆栈深度 我想这可能涉及修改Function原型 但我真的不知道 此外 如果能够在堆栈深度足够高时进行中断 那就太好了 这样做的原因是我有一个I
  • java中字符串的分割

    我想分割这个字符串并将值放入我的数据库表中 我正在考虑使用字符串标记器类或其他方式 请告诉我最好的方法以及如何用代码实际实现它 它看起来像 CSV 因此您可以使用任何推荐的 Java CSV 库 您能推荐一个用于读取 也可能写入 CSV 文
  • 如何更改 React Native 中的“捆绑包标识符”?

    启动一个新的react native项目 xcode 项目获得包标识符 org reactjs native example XYZApp XYZ 是我真实项目名称的占位符 有什么方法可以在反应本机端更改此包标识符吗 当然 我可以在 XCo
  • 使用 wp_redirect 重定向 WordPress 页面

    由于我不想使用另一个插件来执行简单的重定向任务 因此我决定使用以下代码 wp 重定向 http www example com contact us http www example com contact us 301 这是我的问题 假设
  • 如何提高elasticsearch性能

    我使用python中的parallel bulk函数向elasticsearch写入数据 但是性能很低 我写入10000条数据 消耗了180s 我设置了settings settings number of shards 5 number
  • System.InvalidOperationException:“只能使用 IApplicationBuilder.UsePathBase() 配置路径库。” [复制]

    这个问题在这里已经有答案了 我有一个在 Docker 中运行的 ASP Net Core 2 解决方案 该解决方案在一台运行 VS 2017 Professional 的计算机上运行正常 但在另一台运行 VS 2017 Community
  • Firebase 的云功能:如何使用事务承诺?

    我正在尝试在 Cloud Functions 中编写一个函数 每次创建用户时都会触发该函数 然后将该用户保存到用户列表中 最后增加用户计数器 但是我不确定我是否正确使用了承诺 exports saveUser functions auth
  • 为什么从 ADO 切换到 ADO.NET?

    我有一些朋友是 老派 VB6 数据库开发人员 我向他们介绍 NET 及其功能 特别是 ADO NET 在我们的谈话中 他们提出了以下宁愿坚持使用 ADO 而不是转向 ADO NET 的原因 数据集已断开连接 如果断电怎么办 仍然需要编写相同
  • socket.io 错误 - Web 套接字连接在建立连接之前已关闭

    我从这个页面学到了一些 gt https github com Automattic socket io issues 1846 https github com Automattic socket io issues 1846 我需要 S
  • Ray 集群配置 file_mounts 部分不允许启动工作节点

    我正在尝试使用配置文件中的 file mounts 块将少量文件分发到 AWS EC2 上的 Ray 集群中的每个节点 文件挂载 run files 集群启动时仅使用一个主节点 run files 目录的内容已正确复制到该主节点上 但是 所
  • 使用 #hash 从地址栏刷新页面

    情况 url http mydomain com test html somehash http mydomain com test html somehash 测试脚本 document ready function console lo