javascript中路由跳转的原理

前端路由,是一个前端不同页面的状态管理器。

(路由,讲白了,就是页面跳转,这个跳转里面涉及到的路径 是

         相对路径  /login  /regPage)

客户端中的路由,实际上就是dom元素的显示和隐藏。

当页面中显示home内容的时候,about中的内容全部隐藏,反之也是一样。

客户端路由有两种实现方式:基于hash 和基于html5 history api.

路由 有 两种不同方式的方式: Hash 和 History


举个例子:

  <style>
        .main ul li{
            width: 160px;
            height: 26px;
            line-height: 26px;
            list-style: none;
            float: left;
        }
        .container{
            width: 500px;
            height: 300px;
            border: 1px solid blue;
        }
        .p{
            clear: both;
        }
    </style>
</head>
<body>
    <div class="main">
        <h2>京东</h2>
        <ul>
            <li><a href="#/a">登录</a></li>
            <li><a href="#/b">注册</a></li>
            <li><a href="#/c">用户中心</a></li>
        </ul>
        <div class="p"></div>
        <div class="container" id="container">
            首页
        </div>
    </div>


    <script>
        window.onload = function(){
            // 当窗口中的hash值发生变化的时候,我们触发调用onhashchange()
            window.onhashchange = function(){
                console.log(location.hash);
                switch(location.hash){
                case '#/a':
                container.innerHTML = '66666';
                    break;
                case '#/b':
                container.innerHTML = '888';
                    break;
                case '#/c':
                container.innerHTML = '777';
                    break;
            }
            }
        }
    </script>

当点击上面的按钮时查看控制台:

 

 不是很熟,回头搞懂了再来优化一下,大致原理就是这样

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值