zoukankan      html  css  js  c++  java
  • web离线笔记本

    HTML5离线功能:

    离线资源缓存

    在线状态检测

    本地数据存储

    离线web比普通web多了一个描述文件,用来列出需要缓存和永不缓存的资源,以备离线时使用,描述文件扩展名为“.manifest"或".appcache",推荐使用后者。描述文件的mime-type类型为”text/cache-manifest“。

    main.html

    <html>
    <head>
    <meta charset="utf-8" />
    <title>notebook</title>
    <link rel="stylesheet" href="style.css" />
    </head>
    <body>
      <h2>
        write anytime--save anytime
      </h2>
      <div>
        <textarea id="content" cols="100" rows="20"></textarea>
      </div>
      <script src="main.js"></script>
      </body>
    </html>

    现在要把这个web应用离线化,只需将main.html和manifest描述文件关联起来即可

    <html manifest="./offline.appcache">

    在HTML标签上添加manifest属性后,浏览器会自动下载offline.appcache文件并解析,然后缓存文件中的指定资源。下次就可以离线打开这个页面。但是离线下做出的改动并没有保存,所以还需要做数据的本地存储

    main.js

    //获取记录内容的文本域
    var el = document.querySelector('#content');
    //为文本域dom节点添加blur事件
    el.addEventListener('blur', function () {
        //获取文本域内容
        var data = el.value;
        //如果是在线,直接保存到服务器
        if (navigator.onLine) {
            saveOnline(data);
        } else {
            //如果离线,则保存到本地
            localStorage.setItem('data', data);
        }
    });
    //监听上线事件
    window.online = function () {
        //从本地获取数据
        var data = localStorage.getItem('data');
        if (!!data) {
            //如果数据存在,保存到服务器
            saveOnline(data);
            //同时清空本地存储
            localStorage.removeItem('data');
        }
    };
    //保存内容的具体代码
    function saveOnline(data) {
        var xhr = new XMLHttpRequest();
        xhr.open('POST', '/savedata');
        xhr.send('data=' + data);
    }
  • 相关阅读:
    HDU1875——畅通工程再续(最小生成树:Kruskal算法)
    CodeForces114E——Double Happiness(素数二次筛选)
    POJ3083——Children of the Candy Corn(DFS+BFS)
    POJ3687——Labeling Balls(反向建图+拓扑排序)
    SDUT2157——Greatest Number(STL二分查找)
    UVA548——Tree(中后序建树+DFS)
    HDU1312——Red and Black(DFS)
    生活碎碎念
    SQL基础四(例子)
    Linux系统中的一些重要的目录
  • 原文地址:https://www.cnblogs.com/xxxsans/p/14380253.html
Copyright © 2011-2022 走看看