js简单备忘录
<section class="myMemory">
<h3 class="f-tit">记事本</h3>
<div class="myform">
<div class="formcon">
<p>标题:</p>
<input id="formTit" type="text"/>
<p>日期:</p>
<input id="formDate" type="date"/>
<p>内容:</p>
<textarea id="formCon" cols="30" rows="5"></textarea>
<button class="addBtn">添加事件<span class="add-success">添加成功</span></button>
<p>已添加提醒事件</p>
<div class="conbox">
<div class="thing">
<div class="th-head">
<h3 class="th-tit fl"></h3>
<div class="th-time fl"></div>
<span class="th-del">删除</span>
</div>
<div class="th-con">
<span class="con-list"></span>
</div>
</div>
</div>
</div>
</div>
</section>
/*记事本*/
.myform{
width:400px;
height:400px;
border:1px solid #fff;
margin:0 auto;
overflow:hidden;
background:#fff;
border-radius:20px;
}
.myMemory{
z-index:1000;
}
.f-tit{
color:#fff;
font-size:30px;
margin-left:45.5%;
margin-top:70px;
margin-bottom:30px;
}
.formcon{
width:100%;
height:100%;
overflow:auto;
overflow-x:hidden;
}
.myform p{
text-align:center;
font-size:20px;
padding-top:5px;
}
.myform input{
display:block;
font-size:20px;
text-align:center;
width:80%;
height:50px;
line-height:50px;
margin:0 auto;
border:1px solid #d4d4d4;
border-radius: 50px;
}
#formDate{
padding:10px 0 10px 50px;
}
#formCon{
display:block;
width:80%;
border-radius:20px;
margin:0 auto;
outline:none;
padding:6px 12px;
font-size:20px;
}
.addBtn{
display:block;
width:80%;
height:50px;
background:#E91E63;
border-radius:50px;
cursor:pointer;
margin:20px auto;
font-size:20px;
color:#fff;
position:relative;
}
.add-success{
width:50%;
position:absolute;
display:block;
height:30px;
background:#333;
top:-30px;
font-size:16px;
font-family:"微软雅黑";
text-align:center;
line-height:30px;
opacity:0.6;
filter:alpha(opacity=60);
border-radius:5px;
left:24%;
display:none;
}
.add-suc{
display:block;
}
.addBtn:hover{
background:#E90B50;
}
.formcon .conbox{
width:80%;
min-height:50px;
border-radius:20px;
border:1px solid #d4d4d4;
margin:0 auto;
padding:6px 12px;
}
.formcon .conbox .thing{
width:100%;
border-bottom:1px solid #d4d4d4;
display:none;
}
.formcon .conbox .th-head{
width:100%;
height:25px;
line-height:25px;
border-bottom:1px dashed #d4d4d4;
}
.th-tit{
float:left;
font-size:16px;
width:55%;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}
.th-time{
margin-left:30px;
font-size:12px;
}
.th-del{
float:right;
font-size:12px;
color:#777;
cursor:pointer;
text-decoration:line-through;
}
.myform .conbox .th-con{
width:100%;
padding:5px;
line-height:1.5;
font-family:"微软雅黑";
text-indent:1.3em;
font-size:14px;
}
.myform .conbox .th-con .con-list{
white-space:pre-wrap;
}
//记事本
var mesArr = localStorage.message?JSON.parse(localStorage.message) : [];
if(mesArr.length){
$(mesArr).each(function(){
var $thing = $(".thing").eq(0).clone().show();//克隆装事件的容器
$thing.find(".th-tit").html(this.title);
$thing.find(".th-time").html(this.times);
$thing.find(".th-con .con-list").html(this.fCon);
$thing.appendTo($(".conbox"));
})
}
//添加事件
$(".addBtn").click(function(){
if($("#formTit").val() && $("#formDate").val() && $("#formCon").val()){
var title = $("#formTit").val();
var times = $("#formDate").val();
var fCon = $("#formCon").val();
var $thing = $(".thing").eq(0).clone().show();
$thing.find(".th-tit").html(title);
$thing.find(".th-time").html(times);
$thing.find(".th-con .con-list").html(fCon);
$thing.appendTo($(".conbox"));
var obj = {};
obj.title = title;
obj.times = times;
obj.fCon = fCon;
mesArr.push(obj);
localStorage.message = JSON.stringify(mesArr);
$("#formTit").val("");//添加完清空输入内容
$("#formDate").val("");
$("#formCon").val("");
$(".add-success").html("添加成功").addClass("add-suc").addClass("animated fadeInUp");
setTimeout(function(){
$(".add-success").removeClass("animated fadeInUp").removeClass("add-suc")
},1400)
}
else{
$(".add-success").html("请填写完内容").addClass("add-suc").addClass("animated fadeInUp");
setTimeout(function(){
$(".add-success").removeClass("animated fadeInUp").removeClass("add-suc")
},1400)
}
})
//删除事件
$(".conbox").delegate(".th-del","click",function(){
var index = $(this).parents(".thing").index() - 1;
$(this).parents(".thing").remove();
mesArr.splice(index,1);
localStorage.message = JSON.stringify(mesArr);
})
js简单备忘录的更多相关文章
- js简单 图片版时钟,带翻转效果
js简单 图片版时钟,带翻转效果 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...
- js简单操作Cookie
贴一段js简单操作Cookie的代码: //获取指定名称的cookie的值 function getCookie(objName) { var arrStr = document.cookie.spl ...
- js简单弹出层、遮罩层
<html> <head> <title>js简单弹出层</title> <style> /*阴影边框效果*/ .box-shadow-1 ...
- Tourist.js – 简单灵活的操作指南和导航插件
Tourist.js 是一个基于 Backbone 和 jQuery 开发的轻量库,帮助你在应用程序创建简单易用的操作指南和导航功能.相比网站,它更适合用于复杂的,单页网站类型的应用程序.Touris ...
- js简单显示和隐藏div,触发超链接,动态更改button值,setInterval()简单使用,jquery easyui弹出框简单使用 .
js简单显示和隐藏div .<!DOCTYPE html> .<html> .<head> .<meta charset="UTF-8"& ...
- Gulp.js - 简单、直观的自动化项目构建工具
Gulp.js 是一个简单.直观的构建系统.崇尚代码优于配置,使复杂的任务更好管理.通过结合 NodeJS 的数据流的能力,你能够快速构建.通过简单的 API 接口,只需几步就能搭建起自己的自动化项目 ...
- Node.js简单介绍并实现一个简单的Web MVC框架
编号:1018时间:2016年6月13日16:06:41功能:Node.js简单介绍并实现一个简单的Web MVC框架URL :https://cnodejs.org/topic/4f16442cca ...
- JS简单入门教程
JS简单教程 使用方法:放到任意html页面的head标签下 Test1方法弹出当前时间对话框 Test2方法for循环输出 Test3方法for(…in…)输出数组内容 <script typ ...
- js简单实现链式调用
链式调用实现原理:对象中的方法执行后返回对象自身即可以实现链式操作.说白了就是每一次调用方法返回的是同一个对象才可以链式调用. js简单实现链式调用demo Object.prototype.show ...
随机推荐
- 京东2019春招Java工程师编程题题解
生成回文串 题目描述 对于一个字符串,从前开始读和从后开始读是一样的,我们就称这个字符串是回文串. 例如"ABCBA","AA","A"是回 ...
- jquery中attr与prop的区别
先从一个老生常谈的问题说起,使用jquery实现全选全不选.楼主先使用的jquery版本是 jquery-1.11.1.min.js 全选<input type="checkbox&q ...
- 初学Java Web(9)——学生管理系统(简易版)总结
项目开始时间:2018年4月8日14:37:47 项目完成时间:2018年4月9日10:03:30 技术准备 这个项目是自己用于巩固 J2EE 相关知识的练手项目,非常简单,但是相关的功能却非常实用, ...
- Spring源码分析:Spring IOC容器初始化
概述: Spring 对于Java 开发来说,以及算得上非常基础并且核心的框架了,在有一定开发经验后,阅读源码能更好的提高我们的编码能力并且让我们对其更加理解.俗话说知己知彼,百战不殆.当你对Spri ...
- Shell编程-项目部署(一)
由于实际工作中经常用到需要部署项目,比较麻烦,今天记录下如何利用shell脚本完成自动部署的工作,毕竟不是专业的运维出身,写的不好,还请勿喷_^o^_ 今天以部署Django项目为演示,进行部署项目, ...
- [SDOI 2015]序列统计
Description 题库链接 给出集合 \(S\) ,元素都是小于 \(M\) 的非负整数.问能够生成出多少个长度为 \(N\) 的数列 \(A\) ,数列中的每个数都属于集合 \(S\) ,并且 ...
- [HAOI2012]道路
题目描述 C国有n座城市,城市之间通过m条[b]单向[/b]道路连接.一条路径被称为最短路,当且仅当不存在从 它的起点到终点的另外一条路径总长度比它小.两条最短路不同,当且仅当它们包含的道路序列不同. ...
- 【luogu3384】【模板】树链剖分
省选被暴虐,成功爆0...顺便ditoly差点全省总分Rank1 orz..... 于是开始赶进度学新算法.... 然后决定开始学习树剖orz... 发现树剖很好用啊!!!! 然后做了模板题. 题目就 ...
- ●BZOJ 2588 Spoj 10628. Count on a tree
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2588 题解: 主席树,在线,(求LCA)感觉主席树真的好厉害...在原树上建主席树.即对于原 ...
- 12563 Jin Ge Jin Qu hao
• Don’t sing a song more than once (including Jin Ge Jin Qu). • For each song of length t, either si ...