js实现路由
white
green
blue
yellow
function Route(){
}
Route.prototype.open = function (route,callback){
var arr= {};
arr[route] = callback;
window.addEventListener( 'hashchange', function (){
var temp= window.location.hash;
for ( var i in arr){
if (i==temp.slice(1 ,temp.length)){
arr[i]();
}
}
})
}
window.Route = new Route();
function change(color){
var body=document.getElementsByTagName('body')[0 ];
body.style.backgroundColor = color;
console.log(color);
}
Route.open( '/', function (){
change( '' );
});
Route.open( '/green', function (){
change( 'green' );
});
Route.open( '/blue', function (){
change( 'blue' );
});
Route.open( '/yellow', function (){
change( 'yellow' );
});
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did101681