Blame | Last modification | View Log | RSS feed
<html><head><script language="JavaScript" type="text/javascript">// Dojo configurationdjConfig = {//debugAtAllCosts: true, //Don't normally need this in applications.isDebug: true,dojoIframeHistoryUrl: "../../resources/iframe_history.html", //for xdomainpreventBackButtonFix: false};</script><script type="text/javascript"src="../dojo.js"djConfig="isDebug:true, dojoIframeHistoryUrl: '../resources/iframe_history.html'"></script><script type="text/javascript" src="../back.js"></script><script type="text/javascript">ApplicationState = function(stateData, outputDivId, backForwardOutputDivId, bookmarkValue){this.stateData = stateData;this.outputDivId = outputDivId;this.backForwardOutputDivId = backForwardOutputDivId;this.changeUrl = bookmarkValue || false;}dojo.extend(ApplicationState, {back: function(){this.showBackForwardMessage("BACK for State Data: " + this.stateData);this.showStateData();},forward: function(){this.showBackForwardMessage("FORWARD for State Data: " + this.stateData);this.showStateData();},showStateData: function(){dojo.byId(this.outputDivId).innerHTML += this.stateData + '<br />';},showBackForwardMessage: function(message){dojo.byId(this.backForwardOutputDivId).innerHTML += message + '<br />';}});var data = {link0: "This is the initial state (page first loaded)","link with spaces": "This is data for a state with spaces","link%20with%20encoded": "This is data for a state with encoded bits","link+with+pluses": "This is data for a state with pluses",link1: "This is data for link 1",link2: "This is data for link 2",link3: "This is data for link 3",link4: "This is data for link 4",link5: "This is data for link 5",link6: "This is data for link 6",link7: "This is data for link 7"};function goNav(id){var appState = new ApplicationState(data[id], "output", "dataOutput", id);appState.showStateData();dojo.back.addToHistory(appState);}dojo.addOnLoad(function(){var appState = new ApplicationState(data["link0"], "output", "dataOutput");appState.showStateData();dojo.back.setInitialState(appState);});</script></head><body><script type="text/javascript">dojo.back.init();</script><div style="padding-bottom: 20px; width: 100%; border-bottom: 1px solid gray"><h3>dojo.back test</h3><p>This page tests the dojo.back back/forward code. It <b>does not</b>use the bookmarking facility of dojo.back. For that test,see <a href="back-bookmark.html">back-bookmark.html</a>.</p><p>The buttons that start with "Link" on them don't use any dojo.xhr* calls,just JS data already in the page.</p><ul><li>Don't test this page using local disk for MSIE. MSIE will notcreate a history list for iframe_history.html if served from a file:URL. Serve the test pages from a web server to test in that browser.</li><li>Safari 2.0.3+ (and probably 1.3.2+): Only the back button works OK(not the forward button).</li><li>Opera 8.5.3: Does not work.</li><li>Konqueror: Unknown. The latest may have Safari's behavior.</li></ul></div><div style="float:left; padding: 20px"><button onclick="goNav('link1')">Link 1</button><br /><button onclick="goNav('link with spaces')">Link with Spaces</button><br /><button onclick="goNav('link%20with%20encoded')">Link with Encoded</button><br /><button onclick="goNav('link+with+pluses')">Link with Pluses</button><br /><button onclick="goNav('link3')">Link 3</button><br /><button onclick="goNav('link4')">Link 4</button><br /><button onclick="goNav('link5')">Link 5</button><br /><button onclick="goNav('link6')">Link 6</button><br /><button onclick="goNav('link7')">Link 7</button><br /></div><div style="float: left; padding: 20px"><b>Data Output:</b><br /><div id="output"></div><hr /><i>Back/Forward Info:</i><br /><div id="dataOutput"></div></div></body></html>