This example illustrates the use of the router plugin by showing how jquery.claypool defines it's built in routers. See
routes.js for more information on how to use routers.
$.router( "hijax:a", {
selector : 'a',
event : 'click',
strategy : 'first',
routerKeys : 'urls',
hijaxKey : 'link',
eventNamespace : "Claypool:MVC:HijaxLinkController",
target : function(event){
var link = event.target||event.currentTarget;
while(link.tagName.toUpperCase()!='A'){
link = $(link).parent()[0];
}
return $(link).attr("href");
}
}).router( "hijax:button",{
selector : ':button',
event : 'click',
strategy : 'all',
routerKeys : 'urls',
hijaxKey : 'button',
eventNamespace : "Claypool:MVC:HijaxButtonController",
target : function(event){
return event.target.value;
}
}).router( "hijax:input",{
selector : 'input',
event : 'click',
strategy : 'all',
routerKeys : 'urls',
hijaxKey : 'input',
eventNamespace : "Claypool:MVC:HijaxInputController",
target : function(event){
return event.target.name;
}
}).router( "hijax:form",{
selector : 'form',
event : 'submit',
strategy : 'first',
routerKeys : 'urls',
hijaxKey : 'form',
eventNamespace : "Claypool:MVC:HijaxFormController",
target : function(event){
return event.target.action;
}
}).router( "hijax:event",{
strategy : 'all',
routerKeys : 'event',
hijaxKey : 'event',
eventNamespace : "Claypool:MVC:HijaxEventController",
target : function(event){
return event.type;
}
});