zoukankan      html  css  js  c++  java
  • 公众号开发

    1.返回按钮

    pushHistory_replace()/pushHistory_push(),两个方法分别为replaceState/pushState.
    相关文档在MDN上可以查阅到,都是修改浏览器历史记录的,一个是修改最近一条,一个是插入一条.
    function pushHistory_replace() { 
        var state = { 
            title: "crf", 
            url: "#" 
        }; 
        window.history.replaceState(state, "title", "#"); 
    }
    
    function pushHistory_push() { 
        var state = { 
            title: "crf", 
            url: "#xjd" 
        }; 
        window.history.pushState(state, "title", "#xjd"); 
    }
    // 以上两个方法在进入到页面之后都执行了,先改变当前页面的hash,再Push一条.
    // 2个hash值不同,这样在用户点击返回的时候,会返回到push进去的链接,当然,这次跳转改变的只有hash值
    // 此时会触发hashchanged事件,注意有兼容写法.在hashchanged里面可以写上用户点击返回要加上的代码,譬如closeWindow=()
    function hashchange_self(){ var newHash = window.location.hash; if ( newHash != window.oldHash ) { // 如果hash变化了 window.oldHash = newHash; /* * mqq.closeWindow(); * wx.closeWindow(); */ alert("window closed 1st") } } function setHashchange(){ pushHistory_replace(); pushHistory_push(); // 设置hash,push记录 if( "onhashchange" in window ){ // 如果浏览器支持onhashchange window.addEventListener("hashchange", function(){ /* * mqq.closeWindow(); * wx..closeWindow(); */ alert("window closed 2nd") }); }else{ //如果不支持hashchange,每0.1秒对比一次 window.oldHash = window.location.hash; window.hashchange_self = hashchange_self; setInterval("hashchange_self()", 100); } } setHashchange()
  • 相关阅读:
    Nhibernate多表查询解决办法
    Nhibernate compositeid class must override Equals()解决办法
    SQLSERVER2005安装说明
    IList转化为Dataset C#
    Named SQL queries
    把object转换成DataSet,进行数据绑定
    使用Lucene检索文档中的关键字
    使用代理为业务操作添加安全检测
    mongodb副本集架构搭建
    Java生成中文验证码
  • 原文地址:https://www.cnblogs.com/nemoro1928/p/6233665.html
Copyright © 2011-2022 走看看