首页 > 代码库 > 用js写的一个路由
用js写的一个路由
前几天在院子里看了一个大牛用js写了一个路由的,有一句代码一直不知道怎么回事,后来就自己写了一个,写的比较的粗糙,我觉得把面向对象的思想都搞得乱七八糟的,不过功能实现了.
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>js实现路由</title></head><body> < a href="http://www.mamicode.com/" >white</ a> < a href="http://www.mamicode.com/#/green" >green</ a> < a href="http://www.mamicode.com/#/blue" >blue</ a> < a href="http://www.mamicode.com/#/yellow" >yellow</ a></body></html><script> 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‘); });</script>
用js写的一个路由
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。