localStorage实现便签小程序


Posted in Javascript onNovember 28, 2016

前言:今天写了个小练习,把这几天看的东西巩固一下,在这个程序中用到了localStorage存储和json串的转换。

下面是具体的实现代码:

(1)首先判断是否存在用户,从而显示相应的界面

function isUser()
{
  var storage = window.localStorage;
  if (storage.user != undefined)
  {
    document.getElementById("showmess").style.display = "block";
    document.getElementById("fillmess").style.display = "none";
  }
  else
  {
    document.getElementById("showmess").style.display = "none";
    document.getElementById("fillmess").style.display = "block";
  }  
}

(2)存储用户信息

var pic; //全局变量存储图片信息
/*从本地电脑获得图片*/
 function add_files(files) {
        if (files.length) {
          var file = files[0];
          var reader = new FileReader();
          reader.onload = function(e) {
            document.getElementById("userpic").src = e.target.result;
            pic = e.target.result;
          }
          reader.readAsDataURL(file);
        }
      }
function saveUserMess()
{
  var name = document.getElementById("username").value;
  if (name != "")
  {
    var storage = window.localStorage;
    var jsonObj = {
                name:name,
                icon:pic
              }; 
      var user = JSON.stringify(jsonObj);
      storage.setItem("user",user);
  }
  else
  {
    alert("昵称不为空"); 
  }
}

localStorage实现便签小程序

(3)用户输入便签内容,并保存

function save_diary()
{
 var headle = document.getElementById("headle").value;
 var cont = document.getElementById("diary").value;
 if (headle != "" && cont != "")
 {
  var storage = window.localStorage;
  if (storage.diary != undefined)
  {
   var diary = storage.getItem("diary");
   var jsonObj = JSON.parse(diary);
   var diaryItem = {
        headle:headle,
        diary:cont,
        date:new Date()
       }; 
   jsonObj.push(diaryItem);
   var data = JSON.stringify(jsonObj);
   storage.setItem("diary",data); 
  }

  else
  {
   var jsonObj = [{
        headle:headle,
        diary:cont,
        date:new Date()
       }]; 
   var diary = JSON.stringify(jsonObj);
   storage.setItem("diary",diary);
  }
 }
 else
 {
  alert("标题和内容不为空哦"); 
 }
}

localStorage实现便签小程序

(4)将用户便签信息显示在见面

function showDiary()
{
  var storage = window.localStorage;
  var mess = JSON.parse(storage.user);
  if (storage.diary != undefined)
  {
    var json = JSON.parse(storage.diary);
    var div_id = document.getElementById("diarymess");
    for (var i = 0; i < json.length; i++)
    {

      div_id.innerHTML+='<div><button class="btn btn-success"'+'type="button" id="dropdownMenu" onclick="show(this)"><div class="col-md-4"><img src='+mess.icon+' class="img-circle size" id="userpic"><br><font style="text-align:center">'+mess.name+'</font></div><div class="col-md-8"><h2>'+json[i].headle+'</h2><font>'+json[i].date+'</font></div><span class="caret" style="margin-top:50px;">'+'</span></button><p style="display:none">'+json[i].diary+'</p><div>'; 
    }

  }
}

localStorage实现便签小程序

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 兼容鼠标滚轮事件
Apr 07 Javascript
js window.open弹出新的网页窗口
Jan 16 Javascript
使用text方法获取Html元素文本信息示例
Sep 01 Javascript
setTimeout()递归调用不加引号出错的解决方法
Sep 05 Javascript
使用jQuery不判断浏览器高度解决iframe自适应高度问题
Dec 16 Javascript
再谈JavaScript异步编程
Jan 27 Javascript
Angular 中 select指令用法详解
Sep 29 Javascript
微信小程序 首页制作简单实例
Apr 07 Javascript
详解Vue中localstorage和sessionstorage的使用
Dec 22 Javascript
JavaScript实现求最大公共子串的方法
Feb 03 Javascript
JavaScript设计模式--简单工厂模式实例分析【XHR工厂案例】
May 23 Javascript
react-native 实现购物车滑动删除效果的示例代码
Jan 15 Javascript
JavaScript实现邮箱地址自动匹配功能代码
Nov 28 #Javascript
Jquery循环截取字符串的方法(多出的字符串处理成&quot;...&quot;)
Nov 28 #Javascript
基于iscroll.js实现下拉刷新和上拉加载效果
Nov 28 #Javascript
正则表达式,替换所有HTML标签的简单实例
Nov 28 #Javascript
基于slideout.js实现移动端侧边栏滑动特效
Nov 28 #Javascript
js实现右键菜单功能
Nov 28 #Javascript
Javascript 判断两个IP是否在同一网段实例代码
Nov 28 #Javascript
You might like
用函数读出数据表内容放入二维数组
2006/10/09 PHP
PHP的面试题集
2006/11/19 PHP
PHP垃圾回收机制引用计数器概念分析
2013/06/24 PHP
php使用curl发送json格式数据实例
2013/12/17 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
PHP实现bitmap位图排序与求交集的方法
2016/07/28 PHP
火狐浏览器(firefox)下获得Event对象以及keyCode
2008/11/13 Javascript
JS中的this变量的使用介绍
2013/10/21 Javascript
JavaScript初学者建议:不要去管浏览器兼容
2014/02/04 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
jquery中EasyUI实现同步树
2015/03/01 Javascript
jQuery实现的图文高亮滚动切换特效实例
2015/08/10 Javascript
JS 中LocalStorage和SessionStorage的使用
2017/08/17 Javascript
基于 Vue 实现一个酷炫的 menu插件
2017/11/14 Javascript
JS实现的抛物线运动效果示例
2018/01/30 Javascript
Vue修改项目启动端口号方法
2019/11/07 Javascript
详解javascript void(0)
2020/07/13 Javascript
[49:08]FNATIC vs Infamous 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python使用post提交数据到远程url的方法
2015/04/29 Python
Python中的with语句与上下文管理器学习总结
2016/06/28 Python
python 实现调用子文件下的模块方法
2018/12/07 Python
浅谈python函数调用返回两个或多个变量的方法
2019/01/23 Python
Window10下python3.7 安装与卸载教程图解
2019/09/30 Python
教你使用Canvas处理图片的方法
2017/11/28 HTML / CSS
澳大利亚办公室装修:JasonL Office Furniture
2019/06/25 全球购物
Harman Audio官方商店:购买JBL、Harman Kardon、Infinity和AKG
2019/12/05 全球购物
高分子材料与工程专业推荐信
2013/12/01 职场文书
物流专业大学生职业生涯规划书范文
2014/01/15 职场文书
美术专业自荐信
2014/07/07 职场文书
信访工作汇报材料
2014/10/27 职场文书
合同权益转让协议书模板
2014/11/18 职场文书
给上级领导的感谢信
2015/01/22 职场文书
主持人开幕词
2015/01/29 职场文书
selenium.webdriver中add_argument方法常用参数表
2021/04/08 Python
Python编程源码报错解决方法总结经验分享
2021/10/05 Python
美元符号 $
2022/02/17 杂记