define(['jquery', 'backbone', 'underscore'], function($, Backbone, _) { 'use strict'; return Backbone.Router.extend({ initialize: function() { _.bindAll(this, 'changePage'); this.$el = $('#content'); // Tells Backbone to start watching for hashchange events Backbone.history.start(); }, // All of your Backbone Routes (add more) routes: { // When there is no hash bang on the url, the home method is called '': 'home' }, 'home': function() { var self = this; $('#p1').fastClick(function() { self.changePage($('

Page 1


some content
sdfdsf
sdffg

oiuzz

')); }); $('#p2').bind('click', function() { self.changePage($('

Page 2


some content
sdfdsf

sdfsdf

sdffg
')); }); }, changePage: function(content) { var oldpage = this.$el.find('.page'); content.css({x: '100%'}); this.$el.append(content); content.transition({x: 0}, function() { window.setTimeout(function() { oldpage.remove(); }, 400); }); // $("#viewport").transition({x: "100%"}, function(){ // $("#viewport").html(content); // $("#viewport").transition({x: 0}); // }); } }); });