问题标签 [fragment-identifier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 用 php 检索 url 中的哈希值?
SO中的某人告诉我,可以通过php函数parse_url检索url中的哈希(#)?这是真的?
我的网站有很多 ajax 效果,我希望能够将带有哈希的 url 传递给 index.php,以便它可以根据哈希值显示信息。
例如。如果用户在我的网站中单击并导航,并找到了他想要分享的东西,那么他可以复制地址并将其发送给他的朋友,当这个人进入时,他会看到同样的东西。
我曾尝试使用 javascript 将哈希值保存在 cookie 中,但这不适用于 firefox,而且在 safari 中速度太慢(html 将首先显示,因此必须再次刷新页面才能显示正确的内容)。
欢迎任何其他解决方案
编辑:我很困惑..如果我使用 parse_url 我必须自己在 php 中输入 url 来获取哈希?那有什么意义...我的问题是我的朋友是否可以输入带有#值的url并且php可以处理它?这似乎是一个不,我是对的吗?
redirect - 稍后使用 location.hash 时,带有片段标识符的 Response.Redirect 会导致意外刷新
我希望有人可以帮助描述我在 IE 上的 ASP.NET 网站上遇到的以下问题的解决方法。在下文中,我将描述错误并阐明所需解决方案的要求。
复制步骤:
- 用户访问A.aspx
- A.aspx 使用 Response.Redirect 将用户带到 B.aspx#house
- 在 B.aspx#house 上,用户单击设置 window.location.hash='test' 的按钮
实际结果:
B.aspx 再次加载。URL 现在显示 B.aspx#test
预期成绩:
没有重装。URL 将更改为 B.aspx#test
要求:
- 页面 A 必须在 url 中使用片段标识符重定向到页面 B
- 页面 B 上的任何用户操作都会设置 location.hash
- 设置location.hash不能让页面B刷新
- 这必须在 IE 上工作
笔记:
- 仅在 IE 上复制错误(在 ie6|7|8 上测试)。Opera、FF、Chrome、Safari 都有不重载的预期结果。
- 这个错误可能与ASP.NET无关,与IE有关
- 对于任何愿意查看此内容的好心人,我创建了一个最小的 ASP.NET Web 项目,以便在此处轻松复制
javascript - URL 片段标识符 - 简化状态处理 (javascript)
我有一个 Web 应用程序,它广泛使用片段标识符来处理“状态”。
几个问题:
1) 将各种“location.hash 名称值对”分配给变量以跟踪状态的好方法是什么?
1a) 我应该创建一个对象来跟踪 js 中的状态还是为每个名称值对声明全局变量?
1b)是否有任何好的 jquery 插件来简化这个?
1c)如果我想跟踪称为“颜色”的东西 - 是否应该始终将其附加到片段(#)以及检查它是否已定义的正确方法是什么;下面的代码可以改进吗?
1d)由于某些名称被使用了两次(上例中的“vid”) - 我怎样才能轻松地将它们存储为单独的变量?
2)我要特别注意4种不同的“哈希”:
examplesite.com/ (无哈希)
examplesite.com/#example=5 (包含“示例”)
examplesite.com/#time=2003;vid=4;vid=7;modified=5 (包含“修改”)
示例站点。 com/#time=2003;vid=4;vid=7 (不包含“修改”或“示例”)
当应用程序加载并检查上述条件时,您将如何编写一个从哈希中提取变量的控制结构?
3)如何存储先前的状态以及按下后退按钮时如何触发状态更改?
javascript - 处理 Javascript 中的 URL 片段标识符(锚点)更改事件
如何编写将在 URL 片段标识符(锚点)的任何更改上执行的 Javascript 回调代码?
例如从http://example.com#a
到http://example.com#b
python - 如何从 Django 请求对象访问 url 哈希/片段
如标题所示:我如何#
从 Django 视图访问 URL 哈希/片段(哈希后面的部分,或美国英语中的“磅符号”),所以,我想,从 Django 请求对象?
我没有找到有关可用文档的足够信息:http: //docs.djangoproject.com/en/dev/ref/request-response/
PS 假设片段包含在发送到服务器的 URL 中。(我已经在我的情况下验证了这一点,我实际上并没有使用浏览器。)
redirect - URL 片段和 302 重定向
众所周知,URL 片段(后面的部分#
)不会发送到服务器。
我确实想知道当涉及服务器重定向(通过 HTTP 状态 302 和Location:
标头)时片段如何工作。
我的问题实际上是双重的:
如果原始 URL 有一个片段 (
/original.php#foo
),并且重定向到/new.php
,那么原始 URL 的片段部分是否会丢失?或者它有时会应用于新 URL?在这种情况下
会出现新的 URL吗?/new.php#foo
不管原始 URL 是什么,如果服务器重定向到带有片段 (
/new.php#foo
) 的新 URL,片段会得到“尊重”吗?或者服务器真的没有业务干扰片段 - 因此浏览器会通过简单地忽略它/new.php
吗?
asp.net-mvc - 使用 ASP.Net MVC Routelink 生成包含片段的链接
我正在尝试在视图中使用 Html.RouteLink 来生成指向另一个页面上命名锚点的链接。RouteLink 有一些包含片段选项的定义,但我试图弄清楚是否有另一种方法。
是显而易见的解决方案,但看起来有点笨拙。我希望能够做类似的事情
并获得回报
这是可能的还是我需要指定 URL 的每一小部分以使用内置帮助程序获取片段。我也可以像手动一样
但似乎 RouteLink 应该能够更优雅地处理。
javascript - 如何在不导致页面滚动的情况下删除位置哈希?
是否可以删除散列window.location
而不导致页面跳转到顶部?我需要能够在不引起任何跳转的情况下修改哈希。
我有这个:
在此处查看实时示例:http: //jsbin.com/asobi
当用户点击“链接”时,哈希标签被修改,没有任何页面跳转,所以工作正常。
但是当用户单击“取消链接”时,has 标签被删除,页面滚动跳转到顶部。我需要删除没有这种副作用的哈希。
javascript - 你能在不影响历史的情况下使用哈希导航吗?
恐怕这可能是不可能的,但是有没有一种方法可以更改 URL 的哈希值,而无需在浏览器的历史记录中留下条目且无需重新加载?或者做同样的事情?
就细节而言,我正在开发一些基本的哈希导航,如下所示:
显然,使用 jQuery。这个想法是,在这个特定的例子中, 1)让用户返回每个选项卡更改可以通过堆积不必要的引用来有效地“破坏后退按钮”,以及 2)如果他们点击刷新,则不保留他们当前所在的选项卡是烦恼。
javascript - 在 JQuery 中执行 URL 哈希/历史记录的最佳库是什么?
我一直在寻找 URL 哈希的 JQuery 库,但没有找到好的。有“历史插件”,但我们都知道它有问题并且不灵活。
我正在将我的页面加载到一个 div 中。我需要一种方法来进行反向/转发以及 url 散列。
可以处理所有这些的最好的库是什么?