问题标签 [pushstate]
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.
safari - Safari for OS X Lion 中历史动画的解决方法?
在 Safari for OS X Lion 中,当您使用滑动手势在历史记录中向前或向后导航时,窗口会像您在物理页面中移动一样动画。这种行为的问题在于,许多应用程序已经在监听历史状态的变化,并做出适当的响应——无论是在哈希值改变时,还是在使用 HTML5 时pushState
。
一个完美的例子是 GitHub,当导航进出文件夹时——例如https://github.com/johndyer/mediaelement 。如果单击文件夹,然后滑动到上一页,则显示结束状态“快照”,然后从开始状态再次动画到,这不仅令人困惑,而且使动画的信息价值无效。
今天是我使用 Lion 的第一天,但我很好奇是否有其他 Web 开发人员遇到过这个问题,以及您是否找到了解决方法?
html - 带有标准链接的 HTML5 History API
所以,在重新设计我的网站后,我想我会使用 HTML5 历史 API,当我在这里看到它的出色使用时:http: //diveintohtml5.ep.io/examples/history/casey.html
问题是,提供的代码对我不起作用(使用 Chrome 8)。
不完全确定为什么,但它只是在部分内容成功加载后使用链接的 href 值刷新页面。
是否还有其他使用 API 的示例?我不想要 History.js 或类似的东西,因为它使用 hash/hashbangs 作为后备。我正试图摆脱这些。
有任何想法吗?
编辑:Firebug 向我抛出一个“链接没有价值”以及无数对部分加载内容的请求。在这些页面刷新之后
jquery - Davis.js 和滚动到
我正在使用 Davis.js 和 Ariel Flesler 的 scrollLTo 插件。我试图让窗口在我的页面上滚动到一个 div:
这是行不通的。有任何想法吗?
javascript - Internet Explorer 的 pushState 后备?
我知道 IE 不支持 pushState,但我希望我的用户使用现代浏览器享受好处,而使用旧浏览器的用户不使用它。
目前,javascript 代码阻止我的选项卡式导航在 IE 中完全工作,这意味着看不到很多内容。
有人知道我的问题的解决方案吗?
这是我的 JavaScript 代码:
javascript - 如何查找浏览器是否支持 History.Pushstate?
我想在不重新加载页面的情况下更改 URL。我发现的可能解决方案是
window.history.pushState('page2', 'Title', '/page2.php');
但某些浏览器如 Firefox 3.5、IE6+ 不支持此功能,因此对他们来说解决方案是
var uri = window.location.href;
但问题是如何发现浏览器是否支持 history.pushstate?
TRY CATCH 是可能的解决方案还是其他任何东西。
jquery - HTML5 应用路由,pushState
我正在尝试做两件事:
使用 pushState 更改 URL
然后能够路由该链接以显示一个 div,如果有人在他们的浏览器中键入它:
我一直在看一些脚本:davis.js、sammy.js、history.js
我需要这些脚本吗?jQuery中有没有办法做到这一点?
jquery - 帮助 window.history.pushState
我需要语法方面的帮助。
我的网站使用 AJAX 在 #board div 中加载博客文章,然后单击 #close 将其关闭。当我加载帖子时,网址会变成这样http://www.visualise.ca/#!/anne-au-cherry,我想在关闭时返回http://www.visualise.ca/邮政。以下给了我http://www.visualise.ca/#/
1)有人可以帮忙吗?
2) 如果浏览器不支持 html5 怎么办?
非常感谢您的时间和帮助。
更新:这有效,我的“site_url”变量中有错字。
browser-history - 在“pushstate”上正确更新浏览器地址字段
我正在通过 ajax 在网页中加载数据,并使用 pushstate 和 popstate 技巧来更改浏览器地址字段。问题是我的 ajax URL 是这样的
因此,第一次加载网页时,浏览器地址字段为http://webserver/
. 在第一次 ajax 加载时,它变为http://webserver/2011/07/25/foo.txt
. 在第二个 ajax 加载时,它变为http://webserver/2011/07/25/2011/07/26/bar.txt
. 在第三次 ajax 加载时,浏览器 URL 字段变为http://webserver/2011/07/25/2011/07/26/2011/07/27/baz.txt
. 换句话说,只有地址字段的最后一个片段(在“/”上分割)被替换。
如何替换整个地址字段?
jquery - 在不重新加载页面的情况下更新浏览器的 URL
是否可以在不让浏览器转到该页面的情况下更改浏览器地址栏中显示的 URL?例如,在通过 AJAX 调用更新页面内容之后?
我的理解是这是不可能的,这就是为什么 twitter 和 facebook 等网站在 ajax 调用上更新 hash-tag 的原因。
直到今天,当我继续访问http://8tracks.com/并开始使用右侧的过滤器...打开和关闭不同的流派时,我注意到即使它正在执行 ajax 调用刷新页面内容,URL也在动态更新。
有谁知道他们是怎么做到的?
(此外,我目前正在使用 Chrome,但是当我返回并使用 IE9 再次查看时,我注意到 URL 没有更新......这可能是 Chrome 唯一的东西吗?)
backbone.js - 使用 Backbone.js pushstate 进行 seo/书签时重用服务器上的主干视图/路由
我正在对单页应用程序的主干进行一些尽职调查,并想知道是否可以在服务器端重用来自客户端的相同视图/路由,以便当谷歌访问 pushstate URL 或访问它时直接,服务器可以生成与主干在客户端生成的完全相同的 HTML。
必须维护两组独立的视图/路由,一组在客户端,一组在服务器上,这将是一件痛苦的事情。我在 github 上看到了 backnode 项目,但是这似乎有点忽略了这一点,您最终不得不两次编写相同的骨干路由器。
只是想知道当在主干中使用 pushstate url 并需要从服务器提供相同的视图时,人们通常如何处理这种情况?人们是在复制代码还是有更好的方法?