Internet Explorer 5.0, Part III: History Persistence - Doc JavaScript
Historty Persistence
Internet Explorer 5.0 introduces saveHistory
, a Behavior that enables persistent Back and Forward moves. This Behavior enables you to go Back a page and then Forward and still find your page as you have left it in the first place. Let's practice it a little so you understand the power behind it.
Let's try to go Back a page. After you take 3-4 turns on the Connect Three game, click the Back icon. Make sure you have some "o" and "x" pieces positioned on the board. Internet Explorer will go back a page. Now try going forward, by clicking the Forward icon. You will find your Connect Three game in the exact same shape you have left it. You have just witnessed the power of the saveHistory
Behavior. We explain next how to implement it.
There are a few changes you have to implement in your Web page to be able to use the persistence Bahaviors. First, you have to add the following META
tag:
<META NAME="save" CONTENT="history">
Secondly, you need to define the saveHistory
Behavior as a built-in one:
<STYLE>
.saveHistory{behavior:url(#_IE_);}
</STYLE>
The rest of the changes are identical to those made for Favorites persistence, as described on the previous page. We want to persist the whole game board by persisting
the BODY
tag. In order to enable a persistent element, you need to specify its Behavior
via the CLASS
attribute, assign an ID
to the element, and define its onload()
and onsave()
event handlers. In our case of the BODY
tag, the HTML statement looks like this:
<BODY CLASS="saveHistory" ID="game"
onload="handleBodyLoad()" onsave="handleBodySave()">
The onsave()
and the onload()
event handlers are described on the previous page.
As explained on the previous page, it's important to understand that we could not have persisted individual IMG
element's gif
file. The reason is that if we assign the gif
file upon loading of the IMG
element (as opposed to the BODY
element), a load event would be triggered, causing the script to go into an infinite loop.
Created: August 28, 1998
Revised: August 28, 1998
URL: https://www.webreference.com/js/column24/history