问题标签 [browser-state]

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.

0 投票
5 回答
3924 浏览

ajax - 如何为使用 AJAX 获取的页面或内容“添加书签”?

如何为使用 AJAX 获取的页面或内容“添加书签”?

看起来如果我们只是将细节添加到“锚点”中,然后,使用路由甚至在 PHP 代码或 Ruby on Rails 的 route.rb 中捕获该部分,然后显示内容或页面,这似乎很容易因此?(显示整个页面或部分内容)

那么它可以很简单吗?看起来这就是facebook的做法。还有什么其他好的方法可以做到吗?

0 投票
2 回答
3813 浏览

javascript - 通过 JavaScript 或 jQuery 停止在 hashchange 事件上加载图像

我正在使用jQuery BBQ: Back Button & Query Library插件来创建一个页面,该页面在单击链接时会引入动态内容。单击链接时,哈希值会更改并拉入新内容(因此禁用了单击 href 的“默认”操作。)

那部分工作得很好,但是有一个问题。

我的问题示例


假设“主页”页面中有一个 DIV,其中包含许多图像和一个链接列表......

  • 第一页
  • 第二页
  • 第三页

图像可能需要一段时间才能加载,同时用户通常不会等待它们完全加载并单击“第一页”链接。

这会清除“主页”页面的内容并加载“第一页”内容。这很好用。

问题是即使用户已经从“主页”页面移动,来自“主页”页面的图像仍在浏览器中加载。

我知道发生这种情况是因为页面实际上并没有改变,而且我正在使用 BBQ 插件的 hashchange hack,但我想知道 JavaScript 中是否有办法告诉当前加载的所有图像在hashchange事件上停止?

?? 示例代码就像...


0 投票
3 回答
2037 浏览

jquery - jQuery 历史插件可以在 Chrome 中使用吗?

据说jQuery 历史插件 ( http://www.mikage.to/jquery/jquery_history.html ) 可以与 Chrome 一起使用:

http://github.com/tkyk/jquery-history-plugin

支持的浏览器 IE6, IE7, IE8, Firefox3, Safari4, Safari5, Chrome4, and Chrome5

但是当我转到上面提到的顶部链接时,如果我单击加载 1,加载 2,然后加载 3,则返回按钮会将 URL 的哈希部分更改为#2,但“加载的 html:”部分仍然显示“3 “……有人知道为什么吗?

0 投票
1 回答
532 浏览

javascript - Ajaxify 的历史记录和书签在 Chrome 上不起作用?

Ajaxify 是一个非常有名的 jQuery 插件。但我只是使用 Chrome 并尝试此页面:

http://max.jsrhost.com/ajaxify/demo.php

对于新的 v2 功能:历史和书签。当我点击链接 1、2 和 3,然后点击 Chrome 上的后退按钮时,内容没有刷新。所以现在,这个功能在 Chrome 上不起作用?是不是因为最新的 Chrome 不能很好地使用它,但以前版本的 Chrome 可以?

0 投票
3 回答
3481 浏览

jquery - 目前最好的 Ajax 历史和书签插件

似乎每个 Ajax History 和 Bookmark 插件都有一些小错误,范围从

真正简单的历史
http://code.google.com/p/reallysimplehistory/

jQuery 历史插件
http://www.mikage.to/jquery/history/rbbs.cgi?id=RA12733222240679954806&focus=1

ajaxify
http://max.jsrhost.com/ajaxify/

该错误要么根本没有触发事件,因此内容没有改变,要么事件被触发了两次(总比根本不触发要好)。是否有适用于所有现代浏览器的 Ajax 历史和书签插件?(IE 7+、Chrome、Firefox、Safari)

jQuery History 插件似乎是最好的,除了它有这个错误:
在 2 个书签之间切换(或查看一个页面,并从书签加载另一个页面)将无法与 jQuery History 插件一起使用

0 投票
2 回答
3191 浏览

jquery - 带有 Ajax 的 JQuery 后退/前进功能

我一直在编写一个网站,使用 JQuery 将不同的 .html 文件加载到页面上的内容 div 中。当然,这意味着后退和前进按钮在站点内的导航作用不大。我做了一些研究,发现了很多选项,比如历史,甚至发现了关于我的问题的Stack Overflow问题。不幸的是,我现在已经花了两天时间把头撞在键盘上,试图让这些 jquery 插件之一工作。有人可以帮我在我的网站中实现这些后退/前进启用插件之一吗?您的帮助将不胜感激。

提前致谢!

和我的 javascript:

看起来它不应该那么难,但我想我只是不明白它应该如何工作。我的内容 div 被称为“#text”,标题管道中的所有链接都包含在其中。我已经广泛尝试了 jquery.history 和 jquery.address ,但无法让它们工作。再次提前感谢您的任何建议或帮助,我真的希望有人可以帮助我。

0 投票
2 回答
875 浏览

ajax - 使用 Ajax 历史记录和书签时,使用“#!”总是好的吗?而不仅仅是“#”?

Facebook 正在使用 Ajax 历史记录(后退和前进按钮)和书签,#!而不仅仅是#在 URL 中。这样做总是一个好主意吗,因为我认为通常的锚点可能会干扰 Ajax 历史机制以触发它处理普通锚点。

因此,Ajax History 函数只会在看到时才处理哈希部分,#!而不仅仅是#.

并且使用!与主流浏览器兼容?如果 Facebook 正在使用!,则猜测它可能会得到很好的支持。

0 投票
1 回答
502 浏览

javascript - ajax web 应用程序:可以在没有 url 的哈希字符串的情况下强制添加书签吗?

我有一个单页 ajax 驱动的网络应用程序,但是我的应用程序的工作方式是,如果哈希字符串在 url 中,它将加载该元素,这对于人们链接到其内容非常有用。

当谈到书签/收藏时,事情是不同的。我的用户想要为应用程序添加书签,而不是他们正在使用的当前内容(哈希字符串)...

我认为这不太可能,但无论如何让浏览器在页面被添加书签时不包含哈希字符串?

0 投票
1 回答
621 浏览

jquery - 如何使用 jQuery 创建可书签的哈希?

我有一个用作图片库的 URL。在这个 URL 上是一个大拇指div(为简洁起见,我只显示四个大拇指):

和一个空div#content

和一个隐藏的div#preload

我的 jQuery 使用单击缩略图的 ID 到clone()相应图像中的图像,并使用该方法span将它们放入。它工作得很好。现在,我想返回并已经填写了 Project 01。#contenthtml()mysite.com/#project01#content

如何给每个图像一个哈希 URL 来调用相同的 jQuery 状态?

0 投票
3 回答
13207 浏览

javascript - jQuery“window.location.hash” - 得到哈希太晚了?

我正在编写一些脚本,但它有一个严重的哈希问题。

我有一个链接图像列表,例如:

我要做的就是在单击第一张图片后加载文件 files/#1.html,在第二张图片之后加载 files/#2.html 等。

这是我的 jQuery 函数:

因此,当我单击图像时,它应该将哈希添加到 url (href="#1"),将正确的文件加载到 #displayFile div 并将其淡入。

但实际上,当我单击图像时,它显示为空的#displayFile div,并且在我用相同的哈希刷新站点后,它会加载内容。我相信脚本在 URL 中很久之前就获得了哈希值。

如何解决?

谢谢。