小编典典

AJAX和浏览器后退按钮

ajax

我在www.darknovagames.com上运行了基于浏览器的游戏。最近,我一直在努力使用CSS重新格式化该网站,试图让其所有页面都根据HTML标准进行验证。

我一直在想着要在页面左侧放置AJAX导航菜单的想法(而不是每次都将用户带到一个单独的页面,而是需要重新加载标题和导航栏,而这几乎是不会改变的),我知道如果这样做,我可能会破坏浏览器中的“前进/后退”按钮。我的问题是,我应该继续使用AJAX网站,从而要求用户使用网站导航来玩游戏,还是应该离开网站目前的状态,并使用标准的超链接和东西进行导航?

我想问的原因是我在站点中构建了一个论坛系统,很多时候我想将发言链接到论坛中的特定主题。

我也乐于接受建议。是否有一种标准的方法(最好是没有传统框架的方法)仅重新加载网站的正文区域,同时仍更改URL,以便用户可以添加书签以及前进/后退等?那也有可能解决我的问题。我只是在这里寻求最佳解决方案,而不是对特定问题的答案。^ _ ^

谢谢


阅读 257

收藏
2020-07-26

共1个答案

小编典典

如果要启用AJAX,则不要以使网站上每个重要页面都具有可访问URL为代价。这是人们可以使用的可导航站点的基础。

当将所有功能都应用到AJAX调用和回调中时,基本上是在迫使用户进入一条单一的路径来访问他们想要的功能和内容,这完全与Web的工作方式背道而驰。人们依靠地址栏和后退按钮。如果您覆盖所有链接,从而使您的站点实际上是仅通过AJAX更新的单个页面,则将限制用户导航站点和查找所需内容的能力。它还使您的用户无法共享他们找到的内容(这是重点所在,对吧?)。

考虑用户对您网站的思维导图。如果他们知道他们是通过主页进入的,则他们去搜索东西,然后登陆游戏页面,然后开始玩特定的游戏,这是用户采取的四个不同的操作单元。他们可能在每个页面上都做了其他一些较小的,微不足道的操作-
但这是主要的单元。当他们单击“后退”按钮时,他们应该期望返回到其进入的路径。如果您通过AJAX调用加载所有这些页面,那么您将提供一个其功能与用户期望相反的网站。

将您的网站分解为每个重要功能(例如搜索,首页,个人资料,游戏-这取决于您网站的全部内容)。链接到这些页面的任何地方,都可以通过常规链接和静态URL进行。

AJAX很好。但是它的艺术是知道何时使用它,何时不使用。如果您遵循我上面概述的模型,那么您的用户将不胜感激。

2020-07-26