zoukankan      html  css  js  c++  java
  • history.replaceState 和 history.pushState的使用和注意事项 ------------黄丕巧

    HTML5引入了history.pushState()和history.replaceState()这两个方法,他们允许添加和修改history实体。同时,这些方法会和window.onpostate事件一起工作.

    1. replaceState是替换当前的历史信息,pushState是添加一条新的历史记录
    2. 这两个方法有三个参数(state,title,url);
    3. 第一个参数是一个json格式的参数,他可以存储我们在当前历史以后会用到的数据,也可以传null;第二个官方的介绍是说页面的标题,不过暂时用不到,直接传null就可以了;第三个参数是当前历史的url,如果为null则表示当前历史的url和上一历史的url没发生变化

      示例:history.pushState({name:”名字”},null,”?name=张三”);

      注意:1.使用这两个方法时并不会直接触发onpopstate,而是存储了历史记录后前进或后退才会会触发onpopstate事件

         2.history.pushstate有安全限制,其中之一是不允许应用推动跨url-s历史起源;服务器ip的端口不同和直接在电脑本地运行的html都会报错:

      

  • 相关阅读:
    关于ShareSDK接入的各种问题,以及解决方案
    Cocos2d-x使用iOS游戏内付费IAP(C++篇)
    数论——终结素数判定
    poj 2528 线段树+离散化
    STL 优先队列
    poj 2777 线段树+延迟更新
    RMQ
    codeforces 拼手速题2
    codeforces 拼手速题1
    子矩阵 思维吧
  • 原文地址:https://www.cnblogs.com/lihuobao/p/5794527.html
Copyright © 2011-2022 走看看