source: Dev/trunk/src/client/dojox/timing/tests/test_Sequence.html

Last change on this file was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 2.4 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
2        "http://www.w3.org/TR/html4/strict.dtd">
3<html>
4<head>
5       
6        <title>dojox.timing.Sequence class</title>
7
8        <style type="text/css">
9                @import "../../../dojo/resources/dojo.css";
10                @import "../../../dijit/tests/css/dijitTests.css";
11        </style>
12
13        <script type="text/javascript" src="../../../dojo/dojo.js" data-dojo-config="isDebug:true, parseOnLoad: true" ></script>
14        <!--
15        <script type="text/javascript" src="../Sequence.js"></script>
16        -->
17        <script type="text/javascript">
18                dojo.require("dojox.timing.Sequence");
19
20                var seqObj = null,
21                        outputNode = null,
22                        otherObj = null;
23
24                dojo.addOnLoad(function(){
25                        outputNode = dojo.byId('logBox');
26                        seqObj = new dojox.timing.Sequence({});
27                        otherObj = new dojox.timing.Sequence({});
28                });
29
30                function runSequence(){
31                        outputNode.innerHTML = "";
32                        seqObj.go(seq, function() { logMsg('done') });
33                        otherObj.go(otherSeq, function(){ console.log('other done'); });
34                };
35
36                function logMsg(msg){
37                        outputNode.innerHTML += msg + "<br>";
38                }
39       
40                function showMessage(msg) {
41                        logMsg(msg);
42                }
43
44                function returnWhenDone() {
45                        logMsg("in returnWhenDone");
46                        setTimeout(continueSequence, 1000);
47                        return false;
48                }
49
50                function continueSequence() {
51                // continue the sequence run
52                        seqObj.goOn();
53                }
54                        // this is our example sequence array:
55                var seq = [
56                        { func: [showMessage, window, "i am first"], pauseAfter: 1000 },
57                        { func: [showMessage, window, "after 1000ms pause this should be seen"], pauseAfter: 2000 },
58                        { func: [showMessage, window, "another 2000ms pause and 1000ms pause before"], pauseAfter: 1000 },
59                        { func: [showMessage, window, "repeat 10 times and pause 100ms after"], repeat: 10, pauseAfter: 100 },
60                        { func: returnWhenDone } // no array, just a function to call
61                ];
62
63                var otherSeq = [
64                        { func: [dojo.hitch(console,"log","woot"), window, "woot2?"], pauseAfter: 1000, repeat:20 }
65                ];
66
67        </script>
68</head>
69<body class="tundra">
70
71        <h1>dojox.timing.Sequence tests</h1>
72
73        <br>(example code in page source)<br>
74        <input type="button" onClick="runSequence()" value="Run Sequence">
75
76        <h3>Sequence output:</h3>
77        <div id="logBox" style="width:420px; height:250px; overflow:auto; border:1px solid #ccc;">
78        </div>
79
80        <p>TODO: maybe need to put an Animation sequence example here? seems much more robust
81        than using chains and combines with delays and durations to hack timing ... also, need
82        examples for stop() and other methods of class</p>
83
84
85
86</body>
87</html>
Note: See TracBrowser for help on using the repository browser.