加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

AJAX后退按钮实现:它们如何工作?

发布时间:2020-12-16 02:56:28 所属栏目:百科 来源:网络整理
导读:我的页面到目前为止加载了一次,然后它就是那里的所有 AJAX,宝贝:D.显然,后退/前进/重新加载/历史/书签会严重破坏它.我正在研究一些解决方案(我正在关注jQuery插件,也就是烧烤或地址),我很好奇它们是如何实现的. 所有我非常感兴趣的是后退/前进功能,因为这是
我的页面到目前为止加载了一次,然后它就是那里的所有 AJAX,宝贝:D.显然,后退/前进/重新加载/历史/书签会严重破坏它.我正在研究一些解决方案(我正在关注jQuery插件,也就是烧烤或地址),我很好奇它们是如何实现的.

所有我非常感兴趣的是后退/前进功能,因为这是一个真正的“应用程序”,可供5-6人使用,以帮助协调他们的工作,不会形成或形成“网络文档”.我试图阻止一般用户习惯的窗口操作习惯破坏我的应用程序.

到目前为止,我还没有遇到过多个状态可以进入另一个状态的情况,因此我的返回功能实现起来相当简单.但是,没有使用“返回”功能实现返回功能,只需通过“取消”,“返回”和其他按钮.

但我离题了…到目前为止,我真的很喜欢一个简单的URL片段标识符系统的概念,以允许向后/向前功能,我真的想避免在问题上抛出其他人的代码(这是我的第一个webapp和我’我试图尽可能地痛苦地做所有事情以便学习).

好吧,没有更多的离题…我从this article在Content with Style中获得了印象,我可以使用计时器来轮询我的窗口URL并触发相应的AJAX操作.

我有兴趣知道的是:

>如果用于修复AJAX后退/前进破坏的常用插件使用类似的方法,如果没有,他们使用什么方法?
>有什么优点.和利弊.轮询方法,以及任何替代方法.
>我可以实现这些方法的简单版本来实现我的目标吗? (比如150行以下).
>自己这样做是否值得?如果我实施这个,我会学到什么有价值的东西吗?我的(理论上)更简单的版本真的会比一个全面的插件少得多吗?

解决方法

If the common plugins for fixing AJAX’s back/forward breakage use a similar method and if not,what methods do they use?

他们同时使用民意调查和hashchange事件.

What are the pros. and cons. of the polling method,as well as any of the alternative methods.

>轮询优点:并非所有浏览器都支持hashchange,因此它是跨浏览器的
>投票的缺点:在性能方面更昂贵

Could I implement a simple version of these methods that will accomplish my goals? (say under 150 lines).

如果您只为5个人编写应用程序,也可以强制他们使用支持hashchange事件的现代浏览器.然后你可以只用2-3行编写哈希变化检测:)

window.onhashchange = function(event) {
    var url = event.newURL;
    // do something with new url
};

Is it worth it to do it myself? Am I going to learn anything valuable if I implement this? Will my (in theory) simpler version really be that much less code than a comprehensive plugin?

是的,见上文.你可以用很少的代码编写一个更好的实现.例如,Rails使用router向控制器分派请求.路线定义如下:

"/signup"           -> (UsersController,new)
"/user/(id)/photos" -> (PhotosController,index)

您可以定义自己的路由API以在JavaScript中注册路由及其处理函数/对象,并且比现有插件可以做更多更酷的事情,仅限于您的想象力:)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读