zoukankan      html  css  js  c++  java
  • history对象

    h5新增的history的某部分方法和属性,非常实用。

    传送门

    有pushState,replaceSate,popSate,state

    它们详细请看传送门。

    测试请开本地服务器。

    1、达成某个条件返回指定页面。

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>2</title>
        <style>
        body,html{
            width: 100%;
            height: 100%;
            background: rbga(0,0,0,.3);
        }
        </style>
    <script>
    
    function pushHistory(){
        var state={title:"4.html",url:"./4.html"};
         window.history.replaceState(state,'title',"./4.html");
    //替换当前路径,但不显示当前路径的东西,不过替换掉当前路径的历史记录 } window.onload
    =function(){ var abc=document.querySelector("#abc"); abc.onclick=function(){ pushHistory(); } } </script> </head> <body> <h1>我是页面2</h1> <a href="./3.html">33333</a> <a id="abc" href="./3-1.html">4444</a> </body> </html>

    2、监听到返回按钮

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>2</title>
        <style>
        body,html{
            width: 100%;
            height: 100%;
            background: rbga(0,0,0,.3);
        }
        </style>
    <script>
    pushHistory();
    window.addEventListener("popstate",function(ev){
      /*写所想写的代码*/
      //在popstate事件完成后可以获取到state对象
    var a=window.history.state; pushHistory(); }); function pushHistory(){ var state={title:"4.html",url:"./4.html"}; //先要创建一个新的history实体,然后在改变它时会被popstate监听到,并阻止,这第三个参数是个很神奇的参数(url)(空时可以阻止返回按钮) window.history.pushState(state,'',""); } </script> </head> <body> <h1>我是页面2</h1> <a href="./3.html">33333</a> <a id="abc" href="./3-1.html">4444</a> </body> </html>
  • 相关阅读:
    Android程序对不同手机屏幕分辨率自适应的方法
    用户管理和身份验证
    vue----scoped独立样式作用域
    vue----component动态组件
    css----行内元素&&块状元素
    html----rem结合vw布局
    js----jsonp原理
    js----白屏事件&&dom ready时间
    js----var a=b=2解析
    js----常见的表示false的有哪些
  • 原文地址:https://www.cnblogs.com/zhangzhicheng/p/6629479.html
Copyright © 2011-2022 走看看