2
2
< html >
3
3
< head >
4
4
< meta charset ="utf-8 " />
5
- < title > Backbone.js </ title >
6
-
5
+ < title > Backbone by Sun </ title >
6
+ < link type =" image/x-icon " href =" img/labi.ico " rel =" icon " />
7
7
< link href ="impress-demo.css " rel ="stylesheet " />
8
8
< link href ="themes/tricolore.css " rel ="stylesheet " type ="text/css " media ="screen ">
9
9
</ head >
@@ -125,13 +125,47 @@ <h1>Backbone.js</h1>
125
125
</ div >
126
126
127
127
< div class ="step " data-x ="0 " data-y ="5000 " data-z ="-3000 " data-rotate ="300 " data-scale ="1 ">
128
- < p > Let's start < b > search</ b > it !</ p >
128
+ < p > small < b > module</ b > , big < b > thought</ b > </ p >
129
+ < p > < b > Extend it</ b > to < b > Use it</ b > !</ p >
130
+ </ div >
131
+
132
+ < div class ="step slide " data-x ="2000 " data-y ="1500 ">
133
+ < strong class ="stitle "> Create a Backbone Class</ strong >
134
+ < pre >
135
+ < code data-language ="javascript ">
136
+
137
+ // jQuery
138
+ document.getElementById( 'abc' )
139
+ $( '#abc' )
140
+
141
+
142
+ // Backbone var aaa = new Backbone.Model(); ???
143
+ // We need a variety of models
144
+ var Calendar = Backbone.Model.extend({
145
+
146
+ changeDate : function(){
147
+ //ooxx
148
+ }
149
+ });
150
+
151
+ // create a instance
152
+ var aCal = new Calendar();
153
+ </ code >
154
+ </ pre >
155
+ </ div >
156
+
157
+ <!-------------------------------------------------------------------------------- -->
158
+
159
+ < div class ="step " data-x ="1000 " data-y ="5000 " data-z ="-3000 " data-rotate ="300 " data-scale ="1 ">
160
+ < p > Let's start < b > search</ b > it in < b > real world < br /> ( Labi 2.0 )</ b > !</ p >
129
161
</ div >
130
162
131
163
< div class ="step slide " data-x ="-1000 " data-y ="2400 ">
132
- < strong class ="stitle "> Start from Html ! </ strong >
164
+ < strong class ="stitle "> Single Page App </ strong >
133
165
< pre >
134
166
< code data-language ="javascript ">
167
+
168
+
135
169
// Server We want single page
136
170
app.get( /\/calendars\/[\w]*/, function( req, res ) {
137
171
if( !req.xhr ) res.sendfile( './public/html/home.html' );
@@ -145,21 +179,76 @@ <h1>Backbone.js</h1>
145
179
seajs.use( '/js/home/router', function( homeRouter ){
146
180
homeRouter.init();
147
181
});
182
+
183
+ // 管理浏览器历史
184
+ // 提供每个视图可访问的单独 URL
148
185
</ code >
149
186
</ pre >
150
187
</ div >
151
188
189
+ < div class ="step slide " data-x ="0 " data-y ="2400 ">
190
+ < strong class ="stitle "> Manage Route</ strong >
191
+ < div class ="tips ">
192
+ < b > pushState, replaceState</ b > < br />
193
+ < b > # hash</ b >
194
+ </ div >
195
+ < pre >
196
+ < code data-language ="javascript ">
197
+ // home/router ---- init ----- www.labi.com/ooxx
198
+ $(function(){
199
+ Backbone.history.start( { pushState : true, root : "/" } );
200
+ });
152
201
202
+ // 唯一的路由表太混乱 且不利于统一管理
203
+ 'calendars*path' : 'calendarCommon'
153
204
205
+ calendarCommon : function( path ){
206
+ // 日历模块的统一处理 分配给子路由进行匹配执行
207
+ require.async( '../calendar/router', function( calendarRouter ) {
208
+ calendarRouter.routeURL( path );
209
+ });
210
+ }
211
+
212
+ // Router-Util ^_^
213
+ </ code >
214
+ </ pre >
215
+ </ div >
154
216
217
+ < div class ="step " data-x ="2000 " data-y ="5000 " data-z ="-3000 " data-rotate ="300 " data-scale ="1 ">
218
+ < p > Route to < b > View</ b > !</ p >
219
+ </ div >
220
+
221
+ < div class ="step slide " data-x ="3500 " data-y ="-1500 ">
222
+ < strong class ="stitle "> Route to View</ strong >
223
+ < pre >
224
+ < code data-language ="javascript ">
225
+ // home/router ---- init ----- www.labi.com/ooxx
226
+ $(function(){
227
+ Backbone.history.start( { pushState : true, root : "/" } );
228
+ });
229
+
230
+ // 唯一的路由表太混乱 且不利于统一管理
231
+ 'calendars*path' : 'calendarCommon'
232
+
233
+ calendarCommon : function( path ){
234
+ // 日历模块的统一处理 分配给子路由进行匹配执行
235
+ require.async( '../calendar/router', function( calendarRouter ) {
236
+ calendarRouter.routeURL( path );
237
+ });
238
+ }
239
+
240
+ // Router-Util ^_^
241
+ </ code >
242
+ </ pre >
243
+ </ div >
155
244
156
- < div id ="big " class ="step " data-x ="3500 " data-y ="2100 " data-rotate ="180 " data-scale ="6 ">
245
+ < div id ="big " class ="step " data-x ="3500 " data-y ="8100 " data-rotate ="180 " data-scale ="6 ">
157
246
< p > visualize your < b > big</ b > < span class ="thoughts "> thoughts</ span > </ p >
158
247
</ div >
159
248
160
249
161
250
162
- < div id ="its-in-3d " class ="step " data-x ="6200 " data-y ="4300 " data-z ="-100 " data-rotate-x ="-40 " data-rotate-y ="10 " data-scale ="2 ">
251
+ < div id ="its-in-3d " class ="step " data-x ="6200 " data-y ="8300 " data-z ="-100 " data-rotate-x ="-40 " data-rotate-y ="10 " data-scale ="2 ">
163
252
< p > < span class ="have "> have</ span > < span class ="you "> you</ span > < span class ="noticed "> noticed</ span > < span class ="its "> it's</ span > < span class ="in "> in</ span > < b > 3D< sup > *</ sup > </ b > ?</ p >
164
253
< span class ="footnote "> * beat that, prezi ;)</ span >
165
254
</ div >
0 commit comments