码迷,mamicode.com
首页 > Web开发 > 详细

用js写的一个路由

时间:2016-09-24 11:44:45      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:

前几天在院子里看了一个大牛用js写了一个路由的,有一句代码一直不知道怎么回事,后来就自己写了一个,写的比较的粗糙,我觉得把面向对象的思想都搞得乱七八糟的,不过功能实现了.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js实现路由</title>
</head>
<body>
    < a href=" " >white</ a>
    < a href="#/green" >green</ a>
    < a href="#/blue" >blue</ a>
    < a href="#/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写的一个路由

标签:

原文地址:http://www.cnblogs.com/xmhu/p/5902633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!