路由

作者: Light_boy | 来源:发表于2019-06-18 17:44 被阅读0次

js中路由通常是一种基于监听url中hash值变化完成页面内容更新的技术手段。

传统事件处理方式

         $("ul").on("click", "li", function(){

             var index = $(this).index();

             $("#content div").eq(index).show().siblings("div").hide();

         });

        //监听hash的变化

1、使用window的onhashchange

         window.onhashchange = function(e){

            var hash = location.hash.substr(1);

             router[hash]();

         };

2、window.onpopstate

         window.onpopstate = function(e){

             var hash = location.hash.substr(1);

             router[hash]();

         };

3、使用计时器不间断监听hash值变化

        var lastHash = location.hash.substr(1);

        var hashInterval = setInterval(function(){

            var hash = location.hash.substr(1);

            if(hash != lastHash){

                //执行新hash对应的回调

                router[hash]();

                //更新上一次hash

                lastHash = hash;

            }

        }, 50);

//创建路由表

   var router = {

           "home": function(){

              var script = document.createElement("script");

                script.src = "home.js";

                document.head.appendChild(script);

           },

            "hot": function(){

                $("#hot").show().siblings().hide();

            },

            "mine": function(){

                $("#mine").show().siblings().hide();

            }

        };

        // $(window).trigger("popstate");

        var hash = location.hash.substr(1);

        router[hash]();

相关文章

  • thinkphp5学习笔记(三)路由配置

    URL请求的执行流程 路由模式 路由注册 路由规则 路由地址 路由参数 变量规则 路由分组 别名路由 路由绑定

  • larevel 路由索引

    基本路由:路由重定向、视图路由路由参数:必选、可选、正则表达式命名路由路由组:中间件、命名空间、子域名路由、路由前...

  • laravel路由

    2 路由格式 3 路由参数 4 .路由别名 5 .路由群组

  • Vue3: 前端路由的概念和原理

    1、什么是路由 路由(英文:router)就是对应关系。路由分为两大类:① 后端路由② 前端路由 2、后端路由 后...

  • 组件化2.路由框架的设计

    路由框架原理 路由框架是为了实现组件之间的通信 路由框架维护了一个分组的路由表路由表中存放了路由地址和路由信息路由...

  • vue中的路由

    vue中4中路由包含: 1、动态路由2、嵌套路由3、编程式路由4、命名式路由 1、动态路由 2、嵌套路由 3、编程...

  • React-Router知识点

    路由的分类 页面路由 hash 路由 h5路由 react路由 react-router-dom 路由方式 h5路...

  • 路由策略

    路由策略和策略路由 什么是路由策略?路由策略和策略路由有什么区别? 如何配置路由策略? https://blog....

  • Laravel 学习笔记

    路由 文件位置: app/Http/routes.php 基础路由get/post 多请求路由 路由参数 路由别名...

  • React路由

    React路由 一、路由的形式 hash路由 : HashRouter history路由 : BrowserRo...

网友评论

      本文标题:路由

      本文链接:https://www.haomeiwen.com/subject/mmjfqctx.html