几十行代码,打造一款JavaScript便签系统

简介: 几十行代码,打造一款JavaScript便签系统

先看下效果:


微信截图_20230504225136.png


微信截图_20230504225146.png


微信截图_20230504225155.png


载体就是一个网页,用html,css和JavaScript实现一个简单的便签系统。


动画效果用的是animation.css库,缓存用的localStorage。


除非手动清空便签,否则便签会一直保留,非常方便。


微信截图_20230504225215.png


鼠标右键可以点开菜单。


代码:


<!doctype html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>WEBQQ桌面级便签系统</title>
    <meta name="keywords" content="关键词,关键词">
    <meta name="description" content="">
    <style type="text/css">
      *{margin:0;padding:0;}
      body{background:url("images/bg.jpg");background-size:cover;font-size:12px;font-family:"微软雅黑";color:#666;}
      /*menu start*/
      .menu{width:200px;background:#fff;display:none;position:absolute;left:0;top:0;z-index:1;}
      .menu ul li{border-bottom:1px solid #F3F3F3;list-style:none;line-height:36px;font-size:14px;padding-left:15px;}
      .menu ul li:hover{background:#647E7C;color:#fff;}
      /*end menu*/
      #test{font-size:24px;color:#fff;}
      /*box start*/
      .box{position:relative;}
      .box .b_list{width:294px;height:310px;position:absolute;}
      .box .b_list .b_content{width:256px;height:220px;position:absolute;top:60px;left:16px;outline: none;font-size:18px;}
      .box .timer{position:absolute;bottom:10px;right:20px;font-size:14px;}
      /*end box*/
    </style>
  <link type="text/css" rel="stylesheet" href="css/animate.css"></link>
  </head>
<body>
  <!--menu start-->
  <div class="menu">
    <ul>
      <li>新建文件夹</li>
      <li onclick="tz_menu(1);">添加mini便签</li>
      <li onclick="tz_menu(2);">清空便签</li>
      <li>刷新</li>
      <li>上传资料</li>
      <li>更换背景</li>
      <li>注销</li>
    </ul>
  </div>
  <!--end menu-->
  <p id="test"></p>
  <!--box start-->
  <div class="box"></div>
  <!--end box-->
<!--引入jQuery官方类库-->
<script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>  
<script type="text/javascript">
  $(function(){
    // 页面加载时运行
    var _Mark = localStorage.getItem("_Mark");
    if(_Mark){
      $(".box").html(_Mark);
      auto_timer();
    }
    // 屏蔽浏览器的右键
    document.oncontextmenu = function(){
      return false;
    }
    // 按下鼠标显示右键菜单
    $(document).mousedown(function(e){
      var key = e.which; // 获取鼠标的键位(右键3,左键1,鼠标滚轮2)
      if(key == 3){
        var x = e.clientX;
        var y = e.clientY;
        $("#test").html("X = " + x + " : Y = " + y);
        $(".menu").show().css({left:x,top:y});
      }
    });
    // 隐藏右键
    $(document).click(function(){
      $(".menu").hide();
    });
  });
    // 右键的功能
    function tz_menu(flag){
      // 添加便签
      if(flag == 1){
        // 获取当前鼠标的右键的位置
        var left = $(".menu").offset().left;
        var top = $(".menu").offset().top;
        // 生成1到3的随机数
        var random = Math.floor(Math.random()*3) + 1;
        $(".box").append("<div class='b_list animated rollIn' style='left:"+left+"px;top:"+top+"px;'><img src='images/"+random+".png' alt='便签' width='294' height='310'/>"+
                "<div class='b_content' contenteditable='true'></div>"+
                "<p class='timer'><span>3</span>秒后自动保存</p></div>");
        auto_timer();
      }
      // 清空标签
      if(flag == 2){
        $(".b_list").removeClass("animated rollIn").addClass("animated bounceOut").fadeOut(1000);
        // 清空缓存
        localStorage.removeItem("_Mark");
      }
    }
    // 自动保存时间
    function auto_timer(){
      var count = 3;
      var timer = setInterval(function(){
        if(count <= 0){
          count = 3;
          // 保存本地内容
          localStorage.setItem("_Mark",$(".box").html());
        }
        $(".timer").find("span").text(count);
        count--;
      },1000);
    }
</script>
</body>
</html>
相关文章
|
3天前
|
开发框架 前端开发 JavaScript
C# 6.0+JavaScript云LIS系统源码  云LIS实验室信息管理新型解决方案
云LIS是为区域医疗提供临床实验室信息服务的计算机应用程序,可协助区域内所有临床实验室相互协调并完成日常检验工作,对区域内的检验数据进行集中管理和共享,通过对质量控制的管理,最终实现区域内检验结果互认。其目标是以医疗服务机构为主体,以医疗资源和检验信息共享为目标,集成共性技术及医疗服务关键技术,建立区域协同检验,最大化利用有限的医疗卫生资源。
104 1
|
3天前
|
JavaScript 前端开发 算法
什么是Vue.js的响应式系统(reactivity system)?如何实现数据的双向绑定?
什么是Vue.js的响应式系统(reactivity system)?如何实现数据的双向绑定?
25 2
|
6月前
|
JavaScript 前端开发
JavaScript实现input框获取系统默认年月日时分秒
JavaScript实现input框获取系统默认年月日时分秒
146 0
|
3天前
|
安全 数据管理 中间件
云LIS系统源码JavaScript+B/S架构MVC+SQLSugar医院版检验科云LIS系统源码 可提供演示
检验科云LIS系统源码是医疗机构信息化发展的重要趋势。通过云计算技术实现数据的集中管理和共享可以提高数据利用效率和安全性;通过高效灵活的系统设计和可扩展性可以满足不同医疗机构的需求;通过移动性和智能化可以提高医疗服务的精准度和效率;通过集成性可以实现医疗服务的协同性和效率。因此,多医院版检验科云LIS系统源码将成为未来医疗机构信息化发展的重要方向之一。
27 2
|
3天前
|
缓存 JavaScript 前端开发
Node.js的模块系统:CommonJS模块系统的使用
【4月更文挑战第29天】Node.js采用CommonJS作为模块系统,每个文件视为独立模块,通过`module.exports`导出和`require`引入实现依赖。模块有独立作用域,保证封装性,防止命名冲突。引入的模块会被缓存,提高加载效率并确保一致性。利用CommonJS,开发者能编写更模块化、可维护的代码。
|
3天前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
23 0
|
3天前
|
存储 开发框架 前端开发
C#开发的全套成熟的LIS系统源码JavaScript+SQLserver 2012区域云LIS系统源码
医院云LIS系统是一套成熟的实验室信息管理系统,目前已在多家三级级医院应用,并不断更新。云LIS系统是为病人为中心、以业务处理为基础、以提高检验科室管理水平和工作效率为目标,将医学检验、科室管理和财务统计等检验科室/实验室所有工作进行整合,全面改善检验科室/实验室的工作现状。
21 0
|
3天前
|
开发框架 前端开发 JavaScript
采用C#.Net +JavaScript 开发的云LIS系统源码 二级医院应用案例有演示
技术架构:Asp.NET CORE 3.1 MVC + SQLserver + Redis等 开发语言:C# 6.0、JavaScript 前端框架:JQuery、EasyUI、Bootstrap 后端框架:MVC、SQLSugar等 数 据 库:SQLserver 2012
23 0
|
3天前
|
JavaScript API
node.js之模块系统
node.js之模块系统
|
3天前
|
算法 JavaScript 前端开发
游戏物理系统 - 如何在JavaScript中实现基本的碰撞检测算法?
在JavaScript中实现2D矩形碰撞检测,常用AABB方法,适合简单游戏。创建Rectangle类,包含位置和尺寸属性,并定义`collidesWith`方法检查两矩形是否相交。通过比较边界位置判断碰撞,当四条边界条件均满足时,认定发生碰撞。基础算法适用于初级需求,复杂场景可采用更高级的碰撞检测库。
14 1