在线制作作息时间表
时光荏苒,岁月如梭,人们描述时光易逝的句子,多如星河。
一寸光阴一寸金,寸金难买寸光阴。
人生就是一段时间而已,所以我明白了一个道理
人生之中最大的浪费就是时间的浪费
因此我想我们教给我们孩子重要的一课应该也是关于时间的
如何规划好自己的时间便决定了你拥有怎么样的生活,
和更多期待未来的可能性。
时间如此重要,所以我们要做好规划,莫让时光空流逝
带着这样的初衷我开发了这样一个帮助制作作息时间表的网页工具
百闻不如一见,让我们展示一下这个工具的样貌:
百见不如一试,让我们在线体验一下这个工具下面是体验地址
在线作息时间表 | 工具星球 (toolxq.com)http://schedule.toolxq.com/
劝君莫惜金缕衣,
劝君惜取少年时。
花开堪折直须折,
莫待无花空折枝。
再给大家推荐一些关于时间的美妙文字
最是人间留不住,朱颜辞镜花辞树。 ——王国维《蝶恋花》
梦短梦长俱是梦,年来年去是何年。 ——《牡丹亭》
今年海角天涯,萧萧两鬓生华。 ——李清照《清平乐·年年雪里》
流光容易把人抛,红了樱桃,绿了芭蕉。 ——蒋捷《一剪梅·舟过吴江》
岁月骛过,山陵浸远。 ——《后汉书》
窗外日光弹指过,席间花影坐前移。 ——施耐庵《水浒传》
时光只解催人老,不信多情。长恨离亭。泪滴春衫酒易醒。 ——晏殊《采桑子·时光只解催人老》
岁月不居,时节如流。 ——孔融的《论盛孝章书》
年往迅劲矢,时来亮急弦。 ——陆机《长歌行》
人世光阴花上露。 ——马浩澜《青玉案》
下面是一些相关代码的分享,希望对大家有所帮助
new Vue({el: '#app',data: () => ({events: [],eventsSave: []}),mounted() {let _this = this;/*_this.$refs.vuecal.createEvent(// Formatted start date and time or JavaScript Date object.'2023-08-16 13:15',// Event duration in minutes (Integer).120,// Custom event props (optional).{ title: 'New Event', content: 'yay!', class: 'blue-event' })*//*_this.$refs.vuecal.createEvent({start: '2023-08-16 13:15', // Starting from the cursor position in the clicked day cell.end: '2023-08-16 15:15', // Event start + 2 hours.title: '33',content: ''})*/let eventsJson = window.localStorage.getItem("events");let eventArr = [];if (eventsJson) {let eventsSave = JSON.parse(eventsJson);for (let i = 0; i < eventsSave.length; i++) {let eventi = eventsSave[i];console.log(eventi)let start = this.formatDateTime(new Date(eventi.start))let end = this.formatDateTime(new Date(eventi.end))let eventClean = {start: start,end: end,title: eventi.title}eventArr.push(eventClean)}// this.events = JSON.parse(eventsJson);}this.events = eventArr;/*this.events = [{start: '2023-08-16 10:35',end: '2023-08-16 11:30',title: 'Doctor appointment'},{start: '2023-08-16 18:30',end: '2023-08-16 19:15',title: 'Dentist appointment'}]*/},methods: {async downloadImage() {const body = document.body;const html = document.documentElement;const fullHeight = Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);const canvas = document.createElement('canvas');canvas.width = window.innerWidth;canvas.height = fullHeight;const context = canvas.getContext('2d');let yOffset = 0;const captureAndDraw = async () => {const capture = await html2canvas(document.body, { windowWidth: window.innerWidth, windowHeight: window.innerHeight, y: yOffset });context.drawImage(capture, 0, yOffset);yOffset += window.innerHeight;if (yOffset < fullHeight) {window.scrollTo(0, yOffset);setTimeout(captureAndDraw, 100); // Add a delay to ensure content updates and rendering} else {const imageURL = canvas.toDataURL('image/png');const link = document.createElement('a');link.href = imageURL;link.download = 'full-page-scrollable-screenshot.png';link.click();}};captureAndDraw();},onEventCreate(event, deleteEventFunction) {// console.log(event);this.selectedEvent = eventthis.showEventCreationDialog = truethis.deleteEventFunction = deleteEventFunction// console.log(this.$refs.vuecal);return event},logEvents(name, event) {console.log(name);console.log(this.events);console.log(event);},eventDelete(name, event) {console.log(event);const index = this.eventsSave.indexOf(event);if (index !== -1) {this.eventsSave.splice(index, 1);}},eventChange(name, event) {console.log(name)/*console.log(event);let curEvent = event.event;let oriEvent = event.originalEvent// const index = this.eventsSave.indexOf(oriEvent);if (oriEvent) {const index = this.eventsSave.findIndex(item => item._eid === oriEvent._eid);if (index !== -1) {this.eventsSave.splice(index, 1);}}this.eventsSave.push(curEvent);console.log(this.eventsSave);*/window.localStorage.setItem("events", JSON.stringify(this.$refs.vuecal.view.events));},customEventCreation() {this.$refs.vuecal.createEvent(// Formatted start date and time or JavaScript Date object.'2023-08-16 13:15',// Event duration in minutes (Integer).120,// Custom event props (optional).{ title: 'New Event', content: 'yay! 🎉', class: 'blue-event' })const dateTime = prompt('Create event on (YYYY-MM-DD HH:mm)', '2023-08-15 13:15')// Check if date format is correct before creating event.if (/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$/.test(dateTime)) {this.$refs.vuecal.createEvent(// Formatted start date and time or JavaScript Date object.dateTime,// Event duration in minutes (Integer).120,// Custom event props (optional).{ title: 'New Event', content: 'yay! 🎉', class: 'blue-event' })} else if (dateTime) alert('Wrong date format.')},formatDateTime(date) {const year = date.getFullYear();const month = String(date.getMonth() + 1).padStart(2, '0');const day = String(date.getDate()).padStart(2, '0');const hours = String(date.getHours()).padStart(2, '0');const minutes = String(date.getMinutes()).padStart(2, '0');const formattedDate = `${year}-${month}-${day} ${hours}:${minutes}`;return formattedDate;}}
})
相关文章:

在线制作作息时间表
时光荏苒,岁月如梭,人们描述时光易逝的句子,多如星河。 一寸光阴一寸金,寸金难买寸光阴。 人生就是一段时间而已,所以我明白了一个道理 人生之中最大的浪费就是时间的浪费 因此我想我们教给我们孩子重要的一课应该也是…...

他们朝我扔泥巴(scratch)
前言 纯~~~属~~~虚~~~构~~~(同学看完短视频要我做,蟹蟹你) 用scratch做的,幼稚得嘞( ̄_ ̄|||)呵呵(强颜欢笑) 完成视频 视频试了好久,就是传不上来,私信我加我…...

docker部署前端项目保姆级教程
本地启动docker(有不会启动的吗?下载docker(小海豚)双击起来就行) 准备阿里云账号(免费) 没有就去注册一个,记住密码后面要用到 官网地址:阿里云登录 - 欢迎登录阿里云…...
《C和指针》笔记13: static关键字总结
这里对static关键字做一下总结,可以回顾一下前面两篇博客的文章。 《C和指针》笔记11: external和internal链接属性 《C和指针》笔记12: 存储类型(自动变量、静态变量和寄存器变量) 当它用于函数定义时,或用于代码块之外的变量声…...

Docker harbor私有仓库部署与管理
一、搭建本地私有仓库二、Harbor私有仓库部署与管理1、Harbor概述2、Harbor的特性3、Harbor的核心组件3.1 Proxy3.2 Registry3.3 Core services3.3.1 UI(harbor-ui)3.3.2 WebHook3.3.3 Token 服务 3.4 Database(harbor-db)3.5 Log…...

解锁Selenium的力量:不仅仅是Web测试
Selenium简介 Selenium,作为Web应用测试的领军者,已经成为了无数开发者和测试人员的首选工具。它不仅仅是一个自动化测试工具,更是一个强大的Web应用交互框架。 Selenium的起源与发展 Selenium的历史可以追溯到2004年,由Jason Hu…...

[SQLITE_ERROR] SQL error or missing database (near “=“: syntax error)【已解决】
这个报的错误是语法错误,但是我并没有看出来这行代码有什么错。 通过排除掉下边两个问题解决的 从增加记录方法复制的下来的代码,只删除了关闭自动提交事务,但是connection.commit忘记删除executeQuery和executeUpdate方法的用法忘记了&…...

【视觉系统】笔芯内径机器视觉测量软硬件方案-康耐德智能
检测内容 笔芯内径机器视觉测量系统 检测要求 精度0.03mm,速度120~180个/分钟 视觉可行性分析 对样品进行了光学实验,并进行图像处理,原则上可以使用机器视觉系统进行测试测量。 结果: 对所有样品进行分析,可以在不…...
将文件夹的名称写到Excel中
查看文件夹名称 os.listdir()函数会返回指定路径下的所有文件和文件夹的名称列表,包括隐藏文件和文件夹 import osfolder_path . # 文件夹路径 # . is当前路径 files os.listdir(folder_path) # 获取文件夹内所有文件的名称列表for filename in files:print(fi…...
关于Vue CLI项目 运行发生了 less-lorder错误的解决方案
Module node found :Error: Can’t resolve ‘less-loader’ 报错 文章目录 Module node found :Error: Cant resolve less-loader 报错解决方案:安装 webpack 和 less安装 less-loader 问题: 在运行vue项目的时候发生: Module not found: Er…...

【Qt学习】02:信号和槽机制
信号和槽机制 OVERVIEW 信号和槽机制一、系统自带信号与槽二、自定义信号与槽1.基本使用student.cppteacher.cppwidget.cppmain.cpp 2.信号与槽重载student.cppteacher.cppwidget.cppmain.cpp 3.信号连接信号4.Lambda表达式5.信号与槽总结 信号槽机制是 Qt 框架引以为豪的机制之…...

软件工程(十三) 设计模式之结构型设计模式(一)
前面我们记录了创建型设计模式,知道了通过各种模式去创建和管理我们的对象。但是除了对象的创建,我们还有一些结构型的模式。 1、适配器模式(Adapter) 简要说明 将一个类的接口转换为用户希望得到的另一个接口。它使原本不相同的接口得以协同工作。 速记关键字 转换接…...

Node与Express后端架构:高性能的Web应用服务
在现代Web应用开发中,后端架构的性能和可扩展性至关重要。Node.js作为一个基于事件驱动、非阻塞I/O的平台,以及Express作为一个流行的Node.js框架,共同构建了高性能的Web应用服务。 在本文中,我们将深入探讨Node与Express后端架构…...
C++炸弹小游戏
游戏效果 小人可以随便在一些元素(如石头,岩浆,水,宝石等)上跳跃,“地面”一直在上升,小人上升到顶部或者没有血的时候游戏结束(初始20点血),小人可以随意放炸…...
发送通知消息
目录 1 himall3.0商城源码 1.1 SendMessageOnOrderShipping 1.1.1 //发送通知消息 1.2 /// 所有订单是否都支付 1.2.1 //有待付款的订单,则未支付完成 himall3.0商城源码 public static List<InvoiceTitleInfo> GetInvoiceTitles(long userid) { re…...
Python报错:PermissionError: [Errno 13] Permission denied解决方案
Python报错:PermissionError: [Errno 13] Permission denied 翻译为:权限错误:[errno 13]权限被拒绝 错误产生的原因是文件无法打开,可能产生的原因是文件找不到,或者被占用,或者无权限访问,或者…...
【leetcode】第六章 二叉树part01
递归遍历 144. 二叉树的前序遍历 // 前序遍历 public List<Integer> preorderTraversal(TreeNode root) {List<Integer> res new ArrayList<>();preOrder(root, res);return res;}private void preOrder(TreeNode root, List<Integer> res) {if (ro…...

All In One!Meta发布SeamlessM4T,支持100种语言,35种语音、开源、在线体验!
多语言识别翻译的研究一直都是学术界研究的重点。目前全球有几千种语言,在全球化背景下不同语言人群之间的交流越来越密切,然而学习一门外语的成本是非常大的。前两年的研究主要集中在一对一、一对多的研究,然而当面对这么多的语言时…...

Python可视化工具库实战
Matplotlib Matplotlib 是 Python 的可视化基础库,作图风格和 MATLAB 类似,所以称为 Matplotlib。一般学习 Python 数据可视化,都会从 Matplotlib 入手,然后再学习其他的 Python 可视化库。 Seaborn Seaborn 是一个基于 Matplo…...
编解码视频测试序列集
最近测试解码器性能,搜集了一下可以免费的测试序列及,现在罗列如下,有很多需要翻墙: 1、h264的视频测试序列集 https://pi4.informatik.uni-mannheim.de/~kiess/test_sequences/download/ 2、HEVC测试序列 https://blog.csdn.net/…...

国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...

C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...

springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...