]> git.pond.sub.org Git - eow/blob - static/dojo-release-1.1.1/dojo/tests/back.html
Comment class stub
[eow] / static / dojo-release-1.1.1 / dojo / tests / back.html
1 <html>
2 <head>
3         <script language="JavaScript" type="text/javascript">
4                 // Dojo configuration
5                 djConfig = {
6                         //debugAtAllCosts: true, //Don't normally need this in applications.
7                         isDebug: true,
8                         dojoIframeHistoryUrl: "../../resources/iframe_history.html" //for xdomain
9                 };
10         </script>
11         <script type="text/javascript" 
12                 src="../dojo.js" 
13                 djConfig="isDebug:true, dojoIframeHistoryUrl: '../resources/iframe_history.html'"></script>
14         <script type="text/javascript" src="../back.js"></script>
15         <script type="text/javascript"> 
16                 ApplicationState = function(stateData, outputDivId, backForwardOutputDivId, bookmarkValue){
17                         this.stateData = stateData;
18                         this.outputDivId = outputDivId;
19                         this.backForwardOutputDivId = backForwardOutputDivId;
20                         this.changeUrl = bookmarkValue || false;
21                 }
22         
23                 dojo.extend(ApplicationState, {
24                         back: function(){
25                                 this.showBackForwardMessage("BACK for State Data: " + this.stateData);
26                                 this.showStateData();
27                         },
28                         forward: function(){
29                                 this.showBackForwardMessage("FORWARD for State Data: " + this.stateData);
30                                 this.showStateData();
31                         },
32                         showStateData: function(){
33                                 dojo.byId(this.outputDivId).innerHTML += this.stateData + '<br />';
34                         },
35                         showBackForwardMessage: function(message){
36                                 dojo.byId(this.backForwardOutputDivId).innerHTML += message + '<br />';
37                         }
38                 });
39                 
40                 var data = {
41                         link0: "This is the initial state (page first loaded)",
42                         "link with spaces": "This is data for a state with spaces",
43                         "link%20with%20encoded": "This is data for a state with encoded bits",
44                         "link+with+pluses": "This is data for a state with pluses",
45                         link1: "This is data for link 1",
46                         link2: "This is data for link 2",
47                         link3: "This is data for link 3",
48                         link4: "This is data for link 4",
49                         link5: "This is data for link 5",
50                         link6: "This is data for link 6",
51                         link7: "This is data for link 7"
52                 };
53
54                 function goNav(id){
55                         var appState = new ApplicationState(data[id], "output", "dataOutput", id);
56                         appState.showStateData();
57                         dojo.back.addToHistory(appState);
58                 }
59
60                 dojo.addOnLoad(function(){
61                         var appState = new ApplicationState(data["link0"], "output", "dataOutput");
62                         appState.showStateData();
63                         dojo.back.setInitialState(appState);
64                 });
65         </script>
66 </head>
67 <body>
68         <script type="text/javascript">dojo.back.init();</script>
69         <div style="padding-bottom: 20px; width: 100%; border-bottom: 1px solid gray">
70         <h3>dojo.back test</h3>
71         
72         
73         <p>This page tests the dojo.back back/forward code.</p>
74         
75         <p>The buttons that start with "Link" on them don't use any dojo.xhr* calls,
76         just JS data already in the page.</p>
77         
78         <ul>
79                 <li>Don't test this page using local disk for MSIE. MSIE will not
80                 create a history list for iframe_history.html if served from a file:
81                 URL. Serve the test pages from a web server to test in that browser.</li>
82                 <li>Safari 2.0.3+ (and probably 1.3.2+): Only the back button works OK
83                 (not the forward button).</li>
84                 <li>Opera 8.5.3: Does not work.</li>
85                 <li>Konqueror: Unknown. The latest may have Safari's behavior.</li>
86         </ul>
87         </div>
88         <div style="float:left; padding: 20px">
89                 <button onclick="goNav('link1')">Link 1</button><br />
90                 <button onclick="goNav('link with spaces')">Link with Spaces</button><br />
91                 <button onclick="goNav('link%20with%20encoded')">Link with Encoded</button><br />
92                 <button onclick="goNav('link+with+pluses')">Link with Pluses</button><br />
93                 <button onclick="goNav('link3')">Link 3</button><br />
94                 <button onclick="goNav('link4')">Link 4</button><br />
95                 <button onclick="goNav('link5')">Link 5</button><br />
96                 <button onclick="goNav('link6')">Link 6</button><br />
97                 <button onclick="goNav('link7')">Link 7</button><br />
98         </div>
99         <div style="float: left; padding: 20px">
100                 <b>Data Output:</b><br />
101                 <div id="output"></div>
102                 <hr />
103                 <i>Back/Forward Info:</i><br />
104                 <div id="dataOutput"></div>
105         </div>
106 </body>
107 </html>