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 相关文章推荐
JQuery 选择器 xpath 语法应用
May 13 Javascript
Array, Array Constructor, for in loop, typeof, instanceOf
Sep 13 Javascript
JS使用for循环遍历Table的所有单元格内容
Aug 21 Javascript
javascript学习笔记(一)基础知识
Sep 30 Javascript
Javascript代码实现仿实例化类
Apr 03 Javascript
AngularJS Select(选择框)使用详解
Jan 18 Javascript
详解jQuery中关于Ajax的几个常用的函数
Jul 17 jQuery
js禁止Backspace键使浏览器后退的实现方法
Sep 01 Javascript
浅谈Javascript中的对象和继承
Apr 19 Javascript
js计时事件实现圆形时钟
Mar 25 Javascript
Element Badge标记的使用方法
Jul 27 Javascript
vite+vue3.0+ts+element-plus快速搭建项目的实现
Jun 24 Vue.js
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
php中截取中文字符串的代码小结
2011/07/17 PHP
php中AES加密解密的例子小结
2014/02/18 PHP
php获取当月最后一天函数分享
2015/02/02 PHP
PHP和Mysql中转UTF8编码问题汇总
2015/10/10 PHP
php生成gif动画的方法
2015/11/05 PHP
js实现DIV的一些简单控制
2007/06/04 Javascript
javascript跨域刷新实现代码
2011/01/01 Javascript
js采用map取到id集合组并且实现点击一行选中一行
2013/12/16 Javascript
JS控制图片翻转示例代码(兼容firefox,ie,chrome)
2013/12/19 Javascript
js实现鼠标移到链接文字弹出一个提示层的方法
2015/05/11 Javascript
Javascript之String对象详解
2016/06/08 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
JavaScript贪吃蛇小组件实例代码
2017/08/20 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
2017/11/08 jQuery
js实现延迟加载的几种方法详解
2019/01/19 Javascript
Jquery滑动门/tab切换实现方法完整示例
2020/06/05 jQuery
VUE实现吸底按钮
2021/03/04 Vue.js
[01:00:26]Ti4主赛事胜者组第一天 EG vs NEWBEE 1
2014/07/19 DOTA
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
利用Python和OpenCV库将URL转换为OpenCV格式的方法
2015/03/27 Python
深入理解NumPy简明教程---数组1
2016/12/17 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
对Python3中dict.keys()转换成list类型的方法详解
2019/02/03 Python
简单了解python反射机制的一些知识
2019/07/13 Python
Python 如何反方向迭代一个序列
2020/07/28 Python
解决Python import .pyd 可能遇到路径的问题
2021/03/04 Python
澳洲小众品牌的集合网站:BNKR
2018/02/23 全球购物
软件测试工程师笔试题带答案
2015/03/27 面试题
上班离岗检讨书
2014/01/27 职场文书
高三学习决心书
2014/03/11 职场文书
服务承诺书格式
2014/05/21 职场文书
2014年计生工作总结
2014/11/21 职场文书
毕业赠语大全
2015/06/23 职场文书
《女娲补天》读后感5篇
2019/12/31 职场文书
聊聊Lombok中的@Builder注解使用教程
2021/11/17 Java/Android
深入理解 Golang 的字符串
2022/05/04 Golang