zoukankan      html  css  js  c++  java
  • pushState与ajax实现无刷新加载

    一.JS代码:

    $(document).ready(function() {
    
        getContent();//初始化页面
    
        $("nav a").click(function() {
            var href = $(this).attr("href");
            history.pushState("", "", href);//ajax可前进后退
            getContent();//执行ajax
            return false;//阻止默认事件
        });
    });
    
    var getContent = function() {
        hash = window.location.hash;
        if (hash == "#/") { load_page("Home"); } else 
        if (hash == "#/blog") { load_page("Blog"); } else 
        if (hash == "#/productos") {load_page("Productos"); } 
    }
    
    var load_page = function(inf){
        $.ajax({
            type: "GET",
            url: "http://localhost:8080/test.php",
            data: {page: inf},
            cache: false,
            success: function(result) {
                $("#contenido").html(result);
            }
        });
    }
    
    window.onpopstate = function(event) {//点击前进后退时执行
        getContent();
    };
    

      

    二.html代码

    <nav>
      <a href="#/">Home</a>
      <a href="#/blog">blog</a>
      <a href="#/productos">productos</a>
    </nav>
    
    <section id="contenido" role="main">
    
    </section>
    

    三.test.php

    <?php 
    
    echo $_GET['page'];
    
    
    ?>
    

      

  • 相关阅读:
    python学习第三课
    Linux基本操作知识一
    Linux是什么
    Django 多对多 关系
    Django 解决跨域
    支付宝支付
    django中间件
    DRF一对多序列化和反序列化
    python代码实现购物车(django的redis与vue)
    Spring 依赖注入两种方式
  • 原文地址:https://www.cnblogs.com/pcd12321/p/5414082.html
Copyright © 2011-2022 走看看