photopea
发表于|更新于
|浏览量:
我明知生命是什么,是时时刻刻不知如何是好,所以听凭风里飘来花香泛滥的街,习惯于眺望命题模糊的塔,在一顶小伞下大声讽评雨中的战场。——木心
分享一款在线ps的网站:https://www.photopea.com/

非常方便~

相关推荐
2025-03-19
primer-css
只要条件许可,机会成熟,人人都是想作恶的。——叔本华 介绍 Primer CSS:GitHub 的设计系统最近,我在寻找一个强大的设计系统来提升我的项目 UI 设计时,发现了 GitHub 的设计系统——Primer CSS。今天,我将为大家详细介绍一下这个优秀的项目,帮助你更好地了解和使用它。 什么是 Primer CSS?Primer 是 GitHub 的设计系统,提供了一套完整的 CSS 实现,旨在帮助开发者快速构建一致且美观的用户界面。无论你是开发者还是设计师,Primer CSS 都能为你的项目提供强大的支持。 项目概述Primer CSS 是 GitHub 开发和维护的开源项目,自 2015 年 3 月 19 日创建以来,已经吸引了超过 1.2 万个星标和 1244 个 forks。该项目使用 SCSS 语言编写,遵循 MIT 许可证,确保其免费和开源。 项目特点 一致性:Primer CSS 提供了一套统一的样式和组件,确保你的项目在各个页面和模块之间保持一致。 高效:通过使用 Primer CSS,你可以快速构建和维护用户界面,节省大量的开发时间。 可定制:P...
2023-08-25
js阻止默认事件踩坑
人这种卑鄙的东西,什么都会习惯的。——陀思妥耶夫斯基《罪与罚》 今天遇到一个问题,我想阻止浏览器默认的滚动事件,却阻止不了还一直报错 123456789101112131415161718192021<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head><body> <div style="height: 2000px;background:#888"> </div> <script> document.addEventL...
2022-08-14
CSSStyleSheet
只要能培育出艳丽的花朵,做一颗会朽的草又有何妨? ——鲁迅 惯例,先上MDN:https://developer.mozilla.org/zh-CN/docs/Web/API/CSSStyleSheet 然后是例子: 新增规则:https://developer.mozilla.org/zh-CN/docs/Web/API/CSSStyleSheet/insertRule 12// 新增一条规则,将所有元素的hover字体颜色设为蓝色document.styleSheets[0].insertRule("*:hover { color:blue }") 移除规则:https://developer.mozilla.org/zh-CN/docs/Web/API/CSSStyleSheet/deleteRule 1document.styleSheets[0].deleteRule(0)
2024-09-20
vinejs
仅仅对自然做种种临摹,并不会创造出什么伟大的艺术作品。——佚名 Vine.js 是一个轻量级、易于使用的 JavaScript 表单验证库,它的设计理念是简洁和灵活,特别适合前端和后端应用中的数据验证。无论是在前端用户输入时,还是在后端 API 请求时,Vine.js 都能帮助开发者快速、高效地进行数据验证,确保数据的完整性和准确性。 项目介绍Vine.js 诞生的目标是为 JavaScript 应用程序提供更简单、清晰的数据验证方法。它允许开发者定义一系列验证规则,并轻松地应用于不同的数据场景。通过其简洁的 API 设计和全面的错误处理,Vine.js 提供了直观的方式来定义验证逻辑,减少开发者手动编写验证代码的时间和精力。 主要特点: 简单易用:通过简洁的 API,让验证规则定义和应用变得更加直观。 灵活的错误处理:支持定制错误消息,并可以灵活地处理验证失败时的行为。 适用于前后端:无论是用于前端表单验证,还是后端 API 的请求参数验证,Vine.js 都能够胜任。 良好的扩展性:支持自定义验证器,允许开发者根据需要扩展库的功能。 官方文档和 GitHub 地址 官...
2024-05-17
处理js的JSON.parse中Number太长导致精度丢失问题
大自然的真实和单纯,常是重要艺术极点的基础。——恩格斯 代码如下: 1"token".split(".").slice(0,2).map(i=>JSON.parse(atob(i))) 这里主要是 JSON.parse 导致的,我简单复现一下 1JSON.parse('{"id":9052710354240385291}') 得到的是 1{id: 9052710354240385000} 可以看到后面的 291 变为 000 了 解决方式这里使用正则匹配 /:\s*([-+]?\d+(\.\d+)?([eE][-+]?\d+)?)/g 例如: 123456JSON.parse('{"id":9052710354240385291}'.replace(/:\s*([-+]?\d+(\.\d+)?([eE][-+]?\d+)?)/g, (match, p1) => { ...
2023-01-17
headroom.js
寡言省谤,寡欲保身——佚名 昨天说到了enquire.js 作者还有一个更加多stars的项目headroom.js,目前有10.9K stars https://github.com/WickyNilliams/headroom.js 官网网址:https://github.com/WickyNilliams/headroom.js 这个项目就是一个简单的头部,往下滑头部会收起来,往上又出现
