- 博客(43)
- 收藏
- 关注
原创 富文本实现插值
最近项目上需要一个富文本框实现插值操作,插值不可编辑,但是可以删除,尝试了好几种方案,最终决定用contenteditable这个属性来实现首先, contenteditable="true"可以使元素成为可编辑状态<div contenteditable="true"></div>在设置了contenteditable属性的元素中,可以插入或编辑任意的元素,如果要实现不可编辑的插值的话,可以将插值的元素设置为contenteditable="false",这样,就实现了富文
2022-05-29 23:08:35
731
原创 canvas
<style> #can{ width: 500px; height: 300px; border: 1px solid #000; }</style><!-- 画布 --><canvas id="can" width="500px" height="300px"></canvas><script> let canvas = document.getElementById('can').
2022-05-04 21:17:10
174
原创 剪切板操作
有时候业务中会出现一键复制文本的需求,这个时候就需要改动剪切板了。这里大致介绍一下一种方法:Document.exeCommand()Document.exeCommand()支持复制、剪切和粘贴三个操作 document.execCommand('copy')(复制) document.execCommand('cut')(剪切) document.execCommand('paste')(粘贴) 优点: 是操作剪切板的传统方法,各种浏览器都支持,兼容性好
2022-04-05 23:02:28
282
原创 H5端记录页面停留时间
开端最近公共号内嵌的H5项目上有个需求,要记录个别页面的页面停留时间,后端已经写好接口,只要把页面的停留时间传递给后端就可以了。思路一开始我的思路是进入页面的时候记录一个开始时间,离开页面的时候获取一个离开时间,然后相减,把得到的停留时间通过接口传给后端//计算停留时间const countStandTime = () => { const startTime = localStorage.getItem('startTime'); //获取开始时间戳 cons...
2022-02-28 20:53:16
2772
原创 前端JS事件
1.如何绑定事件处理函数ele.onxxx = function(){}<div onclick="console.log('a')"></div>var div = document.getElementsByTagName('div')[0];div.onclick = function(){ console.log('a');};//兼容性好,但只能绑定一个处理函数//基本等同于写在HTML行间上//程序this指向dom元素自身obj.addE
2022-02-13 20:45:53
302
原创 json,异步加载,时间线
1.jsonJSON.stringify()将对象转换为JSON字符串 JSON.parse()将JSON字符串转换为对象2.页面渲染过程domTree + cssTree = randerTree reflow 重排 dom节点的删除,添加;dom节点的宽高变化,位置变化,display none --> block;ffseetWidth offsetLeftrepaint 重绘3.异步加载js(1)defer异步加载,但要等到dom文档全部解析完才会被执行。只有IE能用,也
2021-12-31 22:13:49
154
原创 【前端开发】ES6中的类
一、类:构造函数的语法糖1. 传统的构造函数的问题属性和原型方法定义分离,降低了可读性原型成员可以被枚举默认情况下,构造函数仍然可以被当作普通函数使用2. 类的特点类声明不会被提升,与 let 和 const 一样,存在暂时性死区类中的所有代码均在严格模式下执行类的所有方法都是不可枚举的类的所有方法都无法被当作构造函数使用类的构造器必须使用 new 来调用//面向对象中,将 下面对一个对象的所有成员的定义,统称为类//构造函数 构造器function Animal(typ
2021-11-30 19:33:51
161
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人