问题标签 [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.
.htaccess - htaccess 重写为 ajax 的哈希
基本上我想模仿 Hypem.com 对他们的网址所做的事情,如果你去hypem.com/popular你会被重定向到hypem.com/#/popular
我怎样才能用 htaccess 做到这一点?我有几个需要重定向的基本 url,所有其他的都保持不变,例如,这两个需要重定向:
/news
/contact
但/admin
不应该
javascript - 从 url 中删除哈希
我在我的一个项目中对分页进行 ajax 化,并且由于我希望用户能够为当前页面添加书签,因此我通过哈希附加页码,例如:
就是这样,hyperlink
它工作正常,一切正常,除了页码为 1 时,我不想URL
成为/products#p=1
,我只是希望它成为/products
我尝试了这些变化:
window.location.hash=''
有效,但现在的 url 是这样的/products#
,我不太喜欢那里的哈希值。- 根本不使用 window.location.hash,但是当用户从第 3 页回到第 1 页时,他在第 1 页,但 url 仍然存在,
/products#p=3
因为我没有弄乱哈希。 - 谷歌搜索这让我进入了几分钟(大约 15 分钟)的愚蠢论坛,在那里问题被正确提出,但答案表明页面跳转,因为线程创建者在 href 中具有哈希
<a href="#">
,他应该使用javascript:void(0)
。(他们从未听说过阿贾克斯吗?)
所以最后,我决定做这个帖子,我在这里找到了几个类似的帖子,但所有的答案都与我的第二点非常相似。
所以我的大问题仍然是一个问题:如何将散列踢出 URL 并可能踢出宇宙?(仅适用于第一页!)
jquery - ajax 使用锚链接加载内容?现场处理程序?
嘿伙计们,我正在使用 ajax 从子站点加载 div。这个子网站有一个这样的链接:
我的 ajax 请求被触发的主页有这个#someIDonHomepage div,我希望我的页面跳转到那个位置。
但是,由于我正在使用 ajax 加载锚点,所以这不起作用。
知道我该如何解决吗?
我用 jquery 编写了这个动画滚动脚本,它在单击锚点时动画跳转。
知道我该如何解决吗?谢谢你
url - 推特服务器如何从 URL 片段段中获知单个推文 ID?
更新:
事实证明,Twitter 不知道来自 URL 片段段的单个推文 ID。它的作用是在内联 JavaScript 中包含“上次查看的推特的最新推文”。如果您查看某人的个人资料,然后转到他/她的最后一条推文单页。内联 JavaScript 包含作者最后一条推文的文本。
原始问题:
每条推文都有一个 URL,例如http://twitter.com/#!/DeliciousHot/status/23189589820702720。推文标识 (/DeliciousHot/status/23189589820702720) 位于实际上并未发送到服务器的 URL 片段段中。
最初,我认为它是这样工作的:URL 响应没有此推文特定信息。它是从当前浏览器 URL 中提取推文 ID 并使用 AJAX 获取推文有效负载的 JavaScript 模块。然后使用推文有效负载更新页面内容。
令我惊讶的是,它不是这样工作的!
使用 Firebug,您可以查看http://twitter.com/#!/DeliciousHot/status/23189589820702720的响应,其中包含内联 JavaScript 中的推文有效负载“真正绅士的 10 个迹象”文本。另一个 AJAX 未获取推文有效负载。
那么,即使它在 URL 片段中,Twitter 服务器如何知道预期的推文 ID 呢?
javascript - Ajax 深度链接是否可以在链接中不附加哈希 ('#') 的情况下进行
我见过的大多数 jquery 深度链接插件都要求我将“#”附加到我的链接中。这是一个例子:
甚至 twitter 也这样做(但是,twitter 遵循 Google 的可抓取链接规范,使用#!
, 也受 jquery 深度链接库(如 Jquery BBQ 和 Jquery Address)支持)。
我用新的 twitter 关闭了 Javascript,但它不起作用。我问这个问题是为了知道我是否可以应用深度链接并且即使关闭 Javascript 仍然有一个功能性网站。
提前致谢!
url - URL中的多个片段标识符正确吗?
我偶然发现了一个在其 URL 中使用多个片段标识符的站点,例如http://www.ejeby.se/#newprodukt#produkt#1075#1(不,它不是我的站点,但我链接到它,它给我带来了问题)。
但这真的正确吗?它似乎确实会导致 Safari 和 Internet Explorer 出现问题(传闻,我自己没有尝试过 IE)。
片段标识符不应该唯一标识文档中的一个位置吗?这是 Safari 中的错误还是 www.ejeby.se 以错误的方式使用片段标识符?
编辑:似乎 Safari 的问题在于它转义了所有 # 除了 URL 中的第一个。其他浏览器不这样做。行为正确与否?
javascript - window.location.hash = " "; 防止滚动到顶部?
在我的网站中,我使用
但是如果我想从任何哈希中清除地址 url(当我关闭项目时)并且我设置
它发生页面滚动到首页
有什么方法可以清理 url 而没有任何副作用?
谢谢
ajax - 为什么 Twitter 在 URL 中使用井号和感叹号,它们如何重写搜索 URL?
我们知道哈希是用于 AJAX 搜索的,但是感叹号呢?有人知道吗?
此外,他们的搜索表单的“action”属性指向“/search”,但是当您进行搜索时,哈希感叹号会出现在 URL 中。他们只是从“/search”重定向到“/#!/search”吗?
注意: q 的第二部分仍未得到解答:也就是说,他们是将用户从“/search”重定向到“/#!/search”,还是将用户发送到“/search”并在页面上使用 JS重写网址?– Crashalot 1 月 26 日 23:51
谢谢!
javascript - 是否有任何用于处理 hashbang/shebang (#!) url 的 javascript 库?
由于 Twitter 和 Gawker 使用 hashbang url 的所有负面新闻,我很难找到任何示例/库来了解如何实际使用它们。
我想在我们网站的 javascript 轮播中使用 hashbang url,这样我们就可以直接链接到轮播的特定页面。
是否有任何好的跨浏览器库或示例(最好是非 jQuery,因为我们使用 Prototype)来将新 url 推送到页面位置并在页面加载时解析 url?
javascript - 使用不同的 Fragment ID 加载同一页面不会导致页面重新加载?
基本上,我在页面上有许多链接 - index.html,它们看起来像这样:
我在 window.onload 事件中附加了一个函数,它将打开一个包含片段 ID 的警报框,所以如果我点击第一个链接,我应该得到一个带有“0”等的警报框。
但是,当我从 URL 栏访问 index.html 并按 Enter 时,我只会收到一个警告框。当我点击链接时,没有出现警告框。我认为这是因为没有调用 window.onload 事件......有谁知道如何解决这个问题?