编程随笔

编程随笔
omiHTML
根据设备宽度加载不同图片
<picture>  | 
图片热力区域
点击tab触发
<img src="workplace.jpg" alt="Workplace" usemap="#workmap" width="400" height="379">  | 
模拟textarea可编辑拉伸
<div style="resize: both;min-height:200px;border: 1px solid #ccc;overflow:auto;" contenteditable="true"></div>  | 
meta
<head>  | 
a标签图片下载
<!-- 如果存在跨域问题需要解决跨域,否则会变为跳转 -->  | 
浏览器
调试js控制样式
- 切到控制台Sources
 - f8 -> ctrl+\
 
调试video标签隐藏元素
DOM&BOM
screenX,pageX,clientX,offsetX区别
节点克隆
const container = document.querySelector('.container')  | 
获取图片原始宽高
const loadImg = url => {  | 
拖动图片到指定区域
<img class="img" src="https://gw.alicdn.com/i4/710600684/O1CN01BSkFT41GvJe0mLJBv_!!710600684.jpg_Q75.jpg_.webp" draggable="true" />  | 
文字转语音与语音识别
<textarea id="area" rows="10" cols="100"></textarea>  | 
页面刷新
location.reload // 方法1  | 
获取当前经纬度
navigator.geolocation.getCurrentPosition((position) => console.log(position))  | 
获取剪切板内容
// 包括读写操作  | 
唤醒电话/发送邮件/发送短信/唤醒app
<a href="tel:183xxxxxxxx">一键拨打号码</a>  | 
全屏api
<script>  | 
网络状态
navigator.onLine // 是否在线  | 
DOM增删改查
// 创建新节点  | 
CSS
box-shadow实现多边框
background: black;  | 
条纹颜色
background: linear-gradient(red 33.3%, green 33.3%, green 66.6%, blue 66.6%);  | 
border-radius实现半圆
div {  | 
色轮创建
background: conic-gradient(red, yellow, lime, aqua, blue, fuchsia, red);  | 
方块背景
background-size: 50px 50px;  | 
table边框重叠问题
table {  | 
flex图示
地图暗黑(通过css)
/* 高德与百度测试效果还可以 */  | 
css前缀
-webkit-(Chrome/Safari更新版本的Opera和Edge,几乎所有iOS浏览器,包括Firefox for iOS;基本上,任何基于WebKit或Chromium 的浏览器)  | 
美化chrome滚动条
::-webkit-scrollbar {  | 
伪元素实现浮动清除
selector::after {  | 
hover时暂停动画
selector:hover {  | 
修改选中文本颜色
selector::selection {  | 
段落分割
p {  | 
transition先后执行
transition: 2s; // 不指定名称,默认all  | 
自定义radio样式
// checkbox等修改同理  | 
超出省略号显示
/* 单行超出 */  | 
去除select标签箭头
select {  | 
背景铺满元素
elem {  | 
grid命名布局
.grid-wrapper {  | 
图片镜像
.img {  | 
css属性使用html
<style>  | 
变量
:root {  | 
css遮罩
/* 点击外部关闭直接mask添加事件即可 */  | 
垂直居中方案
/* 太古早的方案就不写了(如table布局) */  | 
Tailwind CSS
1像素底部border
<!-- tailwindcss border-b-1不会生效(2像素就会生效🙂) -->  | 
JavaScript
unicode表情
console.log('\u{01F61F}') // 😟 (该符号unicode为U+1F61F)  | 
判断是否为数组
Object.prototype.toString.call(obj).slice(8,-1) === 'Array'  | 
字符串反转
'hello'.split('').reverse().join('') // olleh  | 
Proxy&Reflect
const target = {}  | 
Promise
// Promise.all  | 
Math对象
Math.floor() // 向下取整  | 
Date对象
// 也可以调用toLocalDateString&toLocalTimeString获取日期&时间字符串  | 
WeakMap与Map
const map = new Map()  | 
UUID
// 🥶不要再用uuid包了  | 
数组乱序
const arr = [1, 2, 3, 4, 5]  | 
判断数据类型
Object.prototype.toString.call(data).slice(8, -1).toLowerCase()  | 
bind
const module = {  | 
大小写互换
const str = 'HeLl0wOrLd'  | 
保留三位小数(小数为0则不保留)
Math.round(float * 1000) / 1000  | 
三元表达式执行
const a = () => 'a'  | 
低频方法
const str = 'hello '  | 
删除dom元素的另类思路
// dom结构为ul>li>content+<button class="delete">删除</button>  | 
document.form
// 获取id为user-form的form表单  | 
createElement&踩坑
[...document.querySelectorAll('li')].forEach(li => {  | 
classList操作
const btn = document.querySelector('btn')  | 
dataset
// <div id="user" data-id="1234567890" data-date-of-birth>John Doe</div>  | 
window.onload与DOMContentLoaded
// DOMContentLoaded  | 
颜色随机
el.style.color = `#${Math.random().toString().slice(2,8)}`  | 
class常见方法
// 1. extends继承  | 
类数组转数组
Array.prototype.slice.call(arrayLike)  | 
Reflect
// apply  | 
NodeJs
使用es模块
# 方式1:package.json修改type为module  | 
SQL
SQL语言集
| SQL功能 | 动词 | 
|---|---|
| 数据查询 | SELECT | 
| 数据定义 | CREATE,DROP,ALTER | 
| 数据操纵 | INSERT,UPDATE,DELETE | 
| 数据控制 | GRANT,REVOTE | 
数据定义
| 操作对象 | 创建 | 删除 | 修改 | 
|---|---|---|---|
| 表 | CREATE TABLE | DROP TABLE | ALTER TABLE | 
| 视图 | CREATE VIEW | DROP VIEW | |
| 索引 | CREATE INDEX | DROP INDEX | 
NPM
normalize.css
抹除浏览器样式差异
postcss-px-to-viewport
pc/app分辨率适配方案
turf
可用于判断点位是否在区域内(地图推荐使用)
fullpage.js
全屏滚动
serve
本地HTTP服务器
全局升级指定包
$ npm update -g pnpm  | 
git
按时间倒序列出commit
# 查看3.0.0之前commit,限定一个  | 
全局配置用户信息
git config --global user.name "sineava"  | 
git远程项目修改
# 因为账户变更,需要做git整体迁移  | 
nginx
设置默认跳转https
server {  | 
代理
server {  | 
其他
vim常用命令
# 文本输入  | 
vscode ctrl+v换行问题
# settings>Format On Paste勾选上  | 
快速框选截图
win+shift+s  | 
 评论
匿名评论隐私政策


















