本例 URL 中的井号 (#) 可能是什么?

问题描述 投票:0回答:2

我知道 URL 末尾的哈希符号 (

#
) 代表片段。 像这样:

https://example.com/path/file#id

但是如果哈希符号放在 URL 路径的中间呢? 像这样:

https://example.com/path#/file

这个哈希符号有什么意义吗?

javascript html url
2个回答
0
投票

对于设计为单页应用程序或广泛依赖 AJAX 进行无缝内容加载而无需刷新页面的网站, 这里的#hash是在客户端传达和管理应用程序的状态。 这种机制允许应用程序本身、客户端和浏览器理解和处理状态。

你可以阅读更多相关内容

https://www.quora.com/Is-AJAX-necessary-for-creating-dynamic-websites-or-could-it-be-replaced-with-alternative-technologies


0
投票

在 URL 中,井号 (#) 通常用于表示片段标识符,指示 URL 引用的文档中的特定部分。当哈希符号位于 URL 末尾时,如第一个示例 (https://example.com/path/file#id) 所示,它表示浏览器应滚动到并显示具有 ID 的元素文档中的“id”。

但是,当哈希符号放置在 URL 路径的中间时,如第二个示例 (https://example.com/path#/file) 所示,它不具有与片段标识符。在这种情况下,URL 的解释可能取决于处理 URL 的特定 Web 应用程序或网站。

一些 Web 应用程序使用客户端路由,其中使用哈希符号来管理单个页面内的导航,而不会触发整个页面重新加载。然后,客户端的 JavaScript 会处理哈希符号之后的 URL 部分,以确定要显示的内容。这在单页应用程序 (SPA) 中经常出现。

在您的示例中(https://example.com/path#/file),“https://example.com/path”处的 Web 应用程序可能正在使用客户端路由,并将处理“ /file”部分的 URL 来在页面上显示相应的内容,而不需要向服务器请求新页面。

要了解您正在使用的网站上下文中的具体行为,您需要参考文档或检查网站的源代码,以了解它如何处理路径中间带有哈希符号的 URL。

© www.soinside.com 2019 - 2024. All rights reserved.