It keeps a track of the history, matches the appropriate route, fires callbacks to handle events and enables the routing in the application.
This is the only method which can be used to manipulate the BackboneJS-History. It starts listening to routes and manages the history for bookmarkable URL's.
Backbone.history.start(options)
options − The options include the parameters such as pushState and hashChange used with history.
<!DOCTYPE html> <html> <head> <title>History Example</title> <script src = "https://code.jquery.com/jquery-2.1.3.min.js" type = "text/javascript"></script> <script src = "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js" type = "text/javascript"></script> <script src = "https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.1.2/backbone-min.js" type = "text/javascript"></script> </head> <script type = "text/javascript"> //'Router' is a name of the router class var Router = Backbone.Router.extend ({ //The 'routes' maps URLs with parameters to functions on your router routes: { "myroute" : "myFunc" }, //'The function 'myFunc' defines the links for the route on the browser myFunc: function (myroute) { document.write(myroute); } }); //'router' is an instance of the Router var router = new Router(); //Start listening to the routes and manages the history for bookmarkable URL's Backbone.history.start(); </script> <body> <a href = "#route1">Route1 </a> <a href = "#route2">Route2 </a> <a href = "#route3">Route3 </a> </body> </html>
Let us carry out the following steps to see how the above code works −
Save the above code in the start.htm file.
Open this HTML file in a browser.
NOTE − The above functionality is related to the address bar. So, when you open the above code in the browser, it will show the result as follows.