自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(137)
  • 资源 (1)
  • 收藏
  • 关注

转载 URL.createObjectURL()的使用方法

URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL。这个 URL 的生命周期和创建它的窗口中的 document 绑定。这个新的URL 对象表示指定的 File 对象或 Blob 对象。兼容性方面两个属性都兼容ie10以上的浏览器。

2022-11-22 17:48:42 3708 1

转载 解决npm install安装太慢

npm install安装太慢,国外镜像改为阿里镜像

2022-11-22 16:47:57 1726 1

原创 elementUi表格合并行数据并展示序号

实现合并行思路:需要一个数据来记录需要合并的行数据(数字几就代表合并几行,比如 [1, 2, 0, 1]就是第一行第四行不变,第二三行合并成一行),还要有一个变量来记录数组下标。

2022-11-04 11:26:35 2550

转载 Vue 中的 Render 全面详解 (渲染函数 & JSX)

Vue 推荐在绝大多数情况下使用模板来创建你的 HTML。然而在一些场景中,你真的需要 JavaScript的完全编程的能力。这时你可以用渲染函数,它比模板更接近编译器。简单的说,在 Vue 中我们使用模板 HTML 语法组建页面的,使用 Render 函数我们可以用 Js 语言来构建 DOM。因为 Vue 是虚拟 DOM,所以在拿到 Template 模板时也要转译成 VNode 的函数,而用 Render 函数构建 DOM,Vue 就免去了转译的过程。

2022-11-03 15:23:56 22443 3

原创 CSS object-fit 属性

object-fit 属性指定元素的内容应该如何去适应指定容器的高度与宽度。用法:object-fit 一般用于 img 和 video 标签,一般可以对这些元素进行保留原始比例的剪切、缩放或者直接进行拉伸等。

2022-10-25 11:48:06 668

转载 pointer-event属性详解

pointer-event属性详解

2022-10-24 15:15:15 568

原创 鼠标禁用样式(cursor:not-allowed)和鼠标禁用事件(pointer-events: none)

注意:父元素如果设置了pointer-event:none 并不意味着父元素上的事件侦听器永远不会被触发,当子元素上设置pointer-event值不是none,那么都可以通过事件传播机制来触发父元素上的事件。用法:该方法只能实现样式上的不可点击,点击依然会触发相应的点击时间,这个样式主要是配合js逻辑(return)阻止事件的发生。注意:如果同时使用这两种样式,会阻止事件的触发,但鼠标并不会显示禁用的样式,而是箭头样式。用法:该样式会阻止默认事件,但是鼠标样式会变成箭头的样子。

2022-10-24 14:47:52 4360

原创 ElementUi使用el-autocomplete实现搜索建议(无数据匹配+点击clearable清除,不触发下拉选项)

ElementUi使用el-autocomplete实现搜索建议(无数据匹配+点击clearable清除,不触发下拉选项)

2022-10-21 17:54:54 9296 7

原创 elementUi时间选择器限制结束时间大于开始时间并且不能选过去时间

elementUi时间选择器限制结束时间大于开始时间并且不能选过去时间。

2022-09-01 16:18:55 979 1

转载 git的冲突解决--git rebase之abort、continue、skip

git rebase,顾名思义,就是重新定义(re)起点(base)的作用,即重新定义分支的版本库状态。git rebase --skip 引起冲突的commits会被丢弃,对于本文应用的例子来说开发者A对c.sh文件的commit无效,开发者A自己修改的部分全部无效,因此,在使用skip时请慎重。$ git rebase --continue 就可以线性的连接本地分支与远程分支,无误之后就回退出,回到主分支上。此时,开发者根据 > 便可知冲突的位置。...

2022-08-26 15:04:53 8313

原创 git rebase合并多个commit记录

endpoint]一般是省略不写的,默认从起始的commit一直到最后一个commit,但是如果写了[endpoint],那么[endpoint]后面的commit就全都不要了,所以要慎用!我们只需要把第二条和第三条的信息注释掉即可,即按i 键,在第二个和第三个订单详情前面加#号,然后按 esc,最后:wq保存即可。上面红框里的,使我们筛选出来要合并的commit,是按时间顺序依次往下排序的,和git log展示的顺序是相反的。其中,发现中间有三次提交的记录一致,是可以合并成一次commit的。......

2022-08-26 14:49:30 2451 1

原创 JS去掉小数末尾多余的0,并且最多保留两位小数

格式化字符串/数字 最多保留两位小数并且去掉多余的0

2022-08-25 10:27:20 2601

转载 Vue-photo-preview(图片放大缩放,大图展示)

4.如果是很多张图片切换的话需要preview为相同值。基于photoswipe的vue图片预览插件。

2022-08-19 10:32:05 1154

原创 数组对象去重

数组对象去重

2022-08-18 16:53:01 578

转载 git log命令全解析

git log命令非常强大而好用,在复杂系统的版本管理中扮演着重要的角色,但默认的git log命令显示出的东西实在太丑,不好好打扮一下根本没法见人,打扮好了用alias命令拍个照片,就正式出道了!...

2022-08-18 10:27:29 18567

转载 git stash详解

git stash命令的作用就是将目前还不想提交的但是已经修改的内容进行保存至堆栈中,后续可以在某个分支上恢复出堆栈中的内容。这也就是说,stash中的内容不仅仅可以恢复到原先开发的分支,也可以恢复到其他任意指定的分支上。git stash作用的范围包括工作区和暂存区中的内容,也就是说没有提交的内容都会保存至堆栈中。...

2022-08-18 10:07:10 340

原创 svg图片调整大小和颜色

svg图片调整大小和颜色

2022-08-09 11:45:36 13941

转载 Vue中使用SVG-ICON

3、src/assets/icons/svg目录下,放置用到的svg图片文件,如图中user.svg。注:上述一步有些项目是用vue.config.js文件配置的,具体看具体配置。7、执行下列命令安装 svg-sprite-loader 插件。在Vue中使用svg-icon,可以按如下配置即可。8、代码中如何引用 svg 图标。...

2022-08-09 11:33:00 720 1

原创 img图片加载错误时显示默认图片

JavaScript用的onerror事件,vue用的@error。JavaScript写法。

2022-08-08 11:34:53 1752

原创 js在字符串指定位置插入字符串

slice(start, end) 方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。) 参数来指定字符串提取的部分。

2022-08-08 10:58:45 29934

原创 elemntUI限制时间选择器不能跨月并且不大于未来时间

elemntUI限制时间选择器不能跨月并且不大于未来时间

2022-08-08 10:28:01 703 1

原创 js中try...catch和finally的用法

用途:一般用于可控的错误,而不是未知的错误,意思就是你很清楚这里可能出错,而且你很清楚什么前提下会出错,你就是要故意利用报错信息来区分错误,就可以把这段代码放进try内,然后出错误的时候就会自动去执行catch里面的代码。每个浏览器都有自身的兼容问题,所以try catch能很好的将异常捕获,每个浏览器的异常报错提示也是不一样的,我们就可以在catch里面将报错抛出并作出对应的措施。先执行try里面的代码,如果try里面的代码有错误,就执行catch里面的代码,否则不执行catch里面的代码。.......

2022-08-04 11:37:09 13684

转载 $.ajax()方法详解

1.url:要求为String类型的参数,(默认为当前页地址)发送请求的地址。2.type:要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和delete也可以使用,但仅部分浏览器支持。3.timeout要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。4.async要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为fa

2022-06-21 16:26:06 284

原创 Js中的数组排序

本文介绍了数组自带的sort方法以及冒泡排序、选择排序、快排以及插入排序1.数组的sort()默认情况下,sort() 方法将按字母和升序将值作为字符串进行排序。注意: sort() 方法会改变原始数组。如果想按照别的顺序进行排序,就必须提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数a和b,如果数组中的元素是数值类型,如果需要升序排序,那么就返回a - b;如果需要降序排序,那么就返回b-a; var oldArr = [19, 55

2022-04-01 16:34:49 13820 2

转载 js 类数组

基本原则类数组为对象,但有一些数组的方法,用起来像数组,因为其本质为对象,也有对象的用法属性要为索引(数字)属性,必须有length属性,最好加上push方法举例子var obj = { 0: 'a', 1: 'a', 2: 'a', 3: 'b', length: 4, push: Array.prototype.push}obj.push('b');obj.length; //5obj[4]; // b这就是一个类数组,你发现可以使用数组的方法,像数组一样访问值,实际

2022-03-31 10:55:01 166

原创 ES6的Set方法

理解SetSet本身是一个构造函数,用来生成Set数据结构。它类似于数组,但里面的成员是唯一的,不重复的。向Set加入值时,不会发生类型转换,它类似于精确相等运算符(===),主要的区别是向 Set 加入值时认为NaN等于自身,而精确相等运算符认为NaN不等于自身。Set 可以接收一个数组做为参数,用来初始化1.用法数组去重 function noRepeat(arr) { return Array.from(new Set(arr)) // return [

2022-03-30 17:40:33 5759

原创 数组去重的方法

方法一: 利用数组的indexOf()思路:创建一个新数组,循环遍历原数组,判断新数组中是否有每一项值,如果没有,就把值加入到到新数组,如果没有,则不进行操作代码如下: var oldArr = [1, 4, 2, 2, 4, 'sun', 'moon', 'sun', 'sun', '2']; function noRepeat(arr) { var newArr = [] for(var i = 0; i < arr.length; i++) {

2022-03-30 16:50:54 386

原创 数组扁平化的方法

定义:数组扁平化就是将一个多维数组转换成一维数组方法一:递归思路:对数组进行遍历,然后判断每一项是否是数组,如果该项不是数组直接放入新数组,如果是数组就再次调用该函数,当数组遍历完成,返回新数组代码如下: let arrFlat = [1, 2, ['sun', [ 18, 'happy' ], 'haha'], 21 ] let flatArr = [] function flatArrFnc(arr) { for(let i = 0; i&l

2022-03-30 12:42:46 1963

原创 setTimeout()和clearTimeout用法详解

setTimeout()是window的方法,该方法用于在指定毫秒数后调用函数或者计算表达式。我们一般常用的参数是两个,今天发现还有第三个参数语法如下:setTimeout(code, delay, arg1, arg2, ...) // 不推荐setTimeout(function() {}, delay, arg1, arg2, ...)对于code这种方式,你可以使用字符串而不是安全function 的,在delay使用之后编译和执行字符串(使用该语法是不推荐的, 原因和 eval(.

2022-03-22 23:56:46 10747

原创 echarts饼图取消鼠标小手的样式

如图所示: 当鼠标滑过圆环和圆环内文字的时候,鼠标是小手,但是客户呢,就不想要小手样式首先,我查询了echarts官网,发现饼图的 cursor 属性然后在代码中修改: series: [ { .... type: 'pie', label: { normal: { show: true, positi

2022-03-10 18:10:26 5731 4

转载 JS之事件捕获和事件冒泡

DOM事件流(event flow )存在三个阶段:事件捕获阶段、处于目标阶段、事件冒泡阶段。事件捕获(event capturing): 当鼠标点击或者触发dom事件时(被触发dom事件的这个元素被叫作事件源),浏览器会从根节点 =>事件源(由外到内)进行事件传播。事件冒泡(dubbed bubbling): 事件源 =>根节点(由内到外)进行事件传播。无论是事件捕获还是事件冒泡,它们都有一个共同的行为,就是事件传播。dom标准事件流的触发的先后顺序为:先捕获再冒泡。即当触发do.

2022-01-14 17:42:18 4899 1

原创 js和vue的图片加载完成事件

我的场景:需要图片在加载完成之后,获取图片的高度,给别的组件传值语法:onload 事件在图片加载完成后立即执行可以使用img的onload事件,等图片加载完成之后再执行其他操作js<body> <img src="xxx" onload="getImg()" > <script> function getImg() { console.log('需要执行的操作'); } </script></bo

2022-01-14 15:57:52 6309

原创 async/await详解

async语法:async function name(param) { statements}其中name是函数名称,param是要传递给函数的参数,statements 是函数体返回值async 函数返回一个成功状态下的Promise 对象,可以使用 then 方法添加回调函数。 async function testFun() { return { name: 'sun' } } var obj = testFun() console..

2022-01-12 17:57:29 463

转载 JS异步编程

1.1 什么叫异步异步(async)是相对于同步(sync)而言的,很好理解。同步就是一件事一件事的执行。只有前一个任务执行完毕,才能执行后一个任务。而异步比如:setTimeout(function cbFn(){ console.log('learnInPro');}, 1000); console.log('sync things');setTimeout就是一个异步任务,当JS引擎顺序执行到setTimeout的时候发现他是个异步任务,则会把这个任务挂起,继续执行后面的代.

2022-01-12 16:22:25 515

转载 hasOwnProperty() 方法详解

hasOwnProperty(propertyName)方法 是用来检测属性是否为对象的自有属性,如果是,返回true,否者false; 参数propertyName指要检测的属性名;用法:object.hasOwnProperty(propertyName) // true/falsehasOwnProperty() 方法是 Object 的原型方法(也称实例方法),它定义在 Object.prototype 对象之上,所有 Object 的实例对象都会继承 hasOwnProperty() 方法。

2022-01-11 11:12:12 747

原创 js复制一个数组(浅复制、深复制)

在js中,我们经常会用到数组复制,Array是引用类型,如果用arrA=arrB简单的把一个数组赋值,并没有创造出一个新数组,arrA和arrB其实指向的还是同一个地址,改变一个另一个也会随之改变,很明显这并不是我们想要的 var arr = [1, 2, 3]; var newArr = arr; arr.push(4); console.log(newArr1); // [1, 2, 3, 4]下面介绍数组的浅复制(适用于数组并不复杂,即数组中没有嵌套对象或者嵌套数组)方法一:c

2022-01-11 10:27:02 37137 3

原创 js如何复制一个对象

方法一:把原来对象的属性遍历一遍,赋给一个新对象 //深复制对象方法 var cloneObj = function (obj) { var newObj = {}; if (obj instanceof Array) { newObj = []; } for (var key in obj) { var val = obj[key]; newObj[key] = typeof val === 'object' ? clon

2022-01-10 17:09:24 17484 1

原创 JavaScript--往对象里面添加数据

方法一: 直接添加 let obj = { name: 'sun' }; // [] let key = 'age'; let value = 18; obj[key] = value; // . obj.age = 18; console.log(obj, 'obj'); // {name: 'sun', age: 18} 'obj'方法二: 利用扩展运算符… let objName = { na

2021-12-31 16:49:51 16025

原创 git仓库中远程新建分支本地没有检测到

远程仓库中新建了一个warn分支,如图但是用git branch 命令并没有监测到warn,也没办法切换到warn分支,如下图解决办法:git remote update origin --prune发现已经有warn分支了,解决

2021-11-09 09:56:20 425

原创 http请求被变成https请求

如图所示,地址前缀是http但是发送请求的时候却变成了https原因:代码里添加如下内容,将自动将http的不安全请求升级为https

2021-10-27 17:46:41 3762

timeline.zip

jQuery实现可以播放的日期时间轴,时间轴封装成函数,timedata.js有使用例子,有播放和暂停功能,时间轴当时间变化控制台有返回数据,时间轴可以拖动。

2020-04-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除