Window对象的history属性引用的是该窗口的History对象。History对象是用来把窗口的浏览历史用文档和文档状态列表的形式表示。History对象的length属牲表示浏览历史列表中的元素数量,但出于安全的因素,脚本不能访问已保存的URL。 (如果允许,则任
意脚本都可以窥探你的浏览历史。)History对象的back()和forward()方法与浏览器的“后退”和“前进”按钮一样:它们使浏览器在浏览历史中前后跳转一格。第三个方法-go()接受一个整数参数,可以在
历史列表中向前(正参数)或向后(负参数)跳过任意多个页。
history.go(-2)//后退两个历史记录,相当于单击“后退”按钮两次
如果窗口包含多个子窗口(比如<iframe>元素——见14.8.2节),子窗口的浏览历史会按时间顺序穿插在主窗口的历史中。这意味着在主窗口调用history.back()(举例)可能会导致其中一个子窗口往回跳转到前一个显示的文档,但主窗口保留当前状态不变。
现代Web应用可以不通过载入新文档而动态地改变自身内容。这么做可能希望用户能用“后退”和“前进”按钮在这些动态创建的应用状态之间进行跳转。