простой маршрутизатор
var route = {
_routes: [], // здесь будут храниться функции, которые вызываются в зависимости от адреса
add: function(url, action) {
this._routes.push({
url: url,
action: action
});
},
run: function() {
this._routes.forEach(function(pattern) {
if(location.href.match(pattern.url)) {
pattern.action();
}
});
}
}
// пример
// выполниться всегда
route.add('.*', function() {
alert('Hello there!');
});
route.add('products.html', function() {
alert("this won't be executed :(");
});
// если сайт/страница/id/*какое то число* то скрипт запускается.
route.add('сайт/страница/id/\\d+', function(){
alert('This is using a regex!');
});
route.run();