自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 问答 (1)
  • 收藏
  • 关注

原创 JS常用方法, 持续更新中......

js常用方法

2019-11-22 14:46:39 878

原创 jspdf+html2canvas浏览器缩放问题

之前在弄页面导出为pdf的时候,jspdf配合html2canvas貌似很好用,我自己在使用的时候也没有觉得有什么问题,但是客户那边反馈说下载下来的pdf不全. 后来问了客户才发现客户的浏览器比例缩放到了125%;以上代码在100%缩放的情况下没有任何问题,导出的pdf也很清晰,但是一旦到了125%或者其他的缩放比例,那么导出的pdf就会缺失掉一部分.那么需要这么修改呢?需要改的也不多, 只是需要判断下设备的devicePixelRatio;这样就不会出现pdf不全的问题了;

2023-12-05 15:10:12 729

原创 nginx结合vite开启gzip压缩

nginx结合vite开启gzip压缩

2023-03-07 16:25:19 384

原创 js日历日期计算核心代码

js日历算法

2022-06-28 18:30:42 538

原创 html转pdf分页问题

代码在最后,现在说下原理,jspdf分页有个比较不要的地方就内容过长的时候虽然会虽然能做到分页,但是会把内容给截断,解决思路是给每个可能会被截断元素加上类,然后动态的计算该元素的位置是否在下一页和上一页之间,如果在的话就添加一个空白元素把这个空白元素给挤下去,这样就能实现了,看看对比效果把。这是没有判断元素位置之前的,可以看到出现了截断再看看判断了元素位置之后的,在分页的地方都不会出现断裂了,完全解决的问题上完整代码import jsPDF from "jspdf";i...

2022-03-31 10:20:03 5669 8

原创 使用less实现根据类名控制样式

不知道大家有没有这样一个需求, 就是我在dom上增加'.mr50'这样一个class类名, 那么就对应'margin-right:50px'; 如果是'.mr40'就对应'margin-right:40px'. 其实这个可以通过less的for循环实现. 代码如下@unit: 1px;.base(@i) when (@i<=50) { @size: @i * 5; .base(@i + 1); .m@{size} { margin: @size*@unit;...

2022-01-12 09:25:24 1089

原创 flex布局 文字溢出... 失效

有个比较好的解决方法flex盒子设置min-width:0; 完事!

2021-09-29 16:28:17 212

原创 vue-router判断页面返回,呈现不同的动画效果

前言:在做vueapp的时候,想要一个效果,就是在点击底部菜单栏的时候页面是淡入淡出,用户使用手机物理按键返回的时候可以左边滑出,看了网上好多资料是判断路由的层级,如果从a/b到a/b/c那么不是返回, 相反从a/b/c到a/b就是返回, 但是我觉得这种方式有点死了, 必须要路由路径的配合, 虽然工作中是会这样做, 但是也不能排除出现意外的情况, 所以我想了另外一种方法. 就是用popstate这个事件. 具体就看代码吧.首先需要监听popstate事件, 这个事件我是写在router/index.

2021-09-14 11:31:51 741

原创 HTML页面导出为PDF

话不多说,直接上代码,需要注意的是需要手动设置下背景颜色,不然的话有可能生成的pdf是黑色的。<!DOCTYPE html><html lang="zh"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatibl

2021-09-09 11:20:18 176

原创 vue3中使用动画

以下是渐入渐出效果, 很简单<template> <router-view v-slot="{ Component }"> <transition name="fade"> <keep-alive> <component :is="Component"/> </keep-alive> </transition> </router-view>&

2021-08-10 18:19:02 204

原创 vue3 使用watch监听数组问题

在vue3中使用watch的时候需要注意的事项很多, 其中需要一项需要注意的是在监听数组的时候假设在setup里面有这样的结构const test = reactive({ arr: [1,2,3,4,5] }) watch(test.arr,(now,old)=>{ console.log(now,old) }) 当页面操作改变了arr时(不重新赋值, 使用push, splice等方法改变数组), 可以正常出发watch函数, 但是你会..

2021-07-30 15:30:02 16218 5

原创 js中关于ArrayBuffer的使用

首先是ArrayBuffer和字符串之间的相互转换// ArrayBuffer转为字符串,参数为ArrayBuffer对象function ab2str(buf) {return String.fromCharCode.apply(null, new Uint16Array(buf));}// 字符串转为ArrayBuffer对象,参数为字符串function str2ab(str) {var buf = new ArrayBuffer(str.length*2); // 每个字符占用2

2020-08-04 16:13:35 835

原创 vue webpack 配合nginx实现浏览器刷新不报错

前提:之前用webpack写项目,因为是在微信公众号上,所以也就没有在意那难看的 “#” 路由,但是最近在做web端的项目,有了那个“#” 就实在是太丑了,所以就改成history模式,但是真的遇到好多的问题,下面就一一说明。 首先vue端,要实现无“#”号,要在路由里面加上 mode:‘history’ 在nginx配置端要加上 locat...

2020-07-22 10:42:03 214

原创 javascript在class中使用requestAnimationFrame的问题

我们都知道requestAnimationFrame是用于做动画的,它可以根据系统性能自动定时的时间,让动画效果达到最流畅,用法也简function step() { console.log('hellow world'); window.requestAnimationFrame(step);}window.requestAnimationFrame(step);这样控制台就会一直打印‘hellow world’了,想要取消的话也很简单,因为window.requestAni.

2020-07-21 15:59:50 856 2

原创 flex布局中padding-right失效问题

相信大家在使用flex布局的时候都遇到一个问题,就是在子元素超出父元素的情况下,padding-left正常, padding-right失效问题,如下图:那么要怎么解决这个问题呢?话不多说,直接贴代码:CSS:.container { display: flex; overflow: auto; ...

2020-01-09 15:06:34 7110 1

原创 chrome下禁用input自动填充背景

大家在写css的时候一定遇到过chrome浏览器input框自动填充的问题,之前解决的办法都是用js去实现的,今天用另一种方法去实现,只需要用css就行了,实现原理就是利用渐变,只是时间设置长一些,也就看不出来了,也没有人会在登录页面停留 99999999s 的时间吧!下面是代码。input:-webkit-autofill,input:-webkit-autofill:hover,in...

2020-01-09 14:09:45 340

原创 vue项目报错

今天在写vue项目的时候发现vue报错, 而且报的错误很奇怪, 如下图:找js代码找了很久, 没有发现原因, 甚至打了无数的断点也没有发现错误, 最后在往上查资料才发现原来是html页面里面的东西出了错误, 以后遇到这种很奇怪的错误, 就直接去html页面里面去找错误吧....

2019-11-15 11:22:04 192

原创 vuex在模块中getters和actions命名重复会冲突,用命名空间即可解决

最近在做项目的时候,用了vuex的模块化模式,一开始没有什么问题 ,但是写到后面发现就出现问题了,打开控制台,发现这样的错误;百度之后发现是模块里面的getters方法的名字和根store里面的getters方法名字重复了。所以会报这样的错误,不仅仅是getters方法名字重复会报错,如果actions的名字也重复的话,那么这个action会执行多次,这就不是我们想要的效果了...

2019-05-29 13:58:49 5282

原创 vue项目打包后页面出现空白

相信很多刚刚接触vue的伙伴会遇到这样的问题,就是说vue项目在开发环境下一切正常,但是打包之后,打开index.html页面却是一片空白,打开控制台发现这样的错误出现这种情况要分两个处理方式(vue-cli2和vue-cli3),先说vue-cli2; 首先找到config/index.js文件,将assetPublicPath的路径改为“./”即可,vue-cli3...

2019-05-23 14:57:55 19127 6

原创 nginx 配置反向代理解决跨域

这里说明下:http://www.b.com:8081是nginx的ip地址和端口 而test则是真正的后端接口地址,假设后端的完整接口地址是“www.a.com:8080/test” 那么nginx在配置完转发规则后再请求"http://www.b.com:8081/cross/test"的时候,由于已经配置的转发,所以相当于就是请求“www.a.com:8080/test”...

2019-04-02 14:57:25 167

原创 call和apply的浅显理解

call和apply的浅显理解

2017-03-02 15:48:39 205

原创 怎么配置java运行环境中的jdk环境变量

jdk怎么配置环境变量

2017-02-23 19:06:43 362

原创 关于js中的事件冒泡和事件捕获问题

这两天我发现一个我理解事件冒泡的一个误区,其实事件冒泡指的是父元素和子元素同时绑定了点击事件,如果你不阻止冒泡的话,当你点击父元素是就只会触发父元素的事件,但是当你点击子元素的时候,他就会触发两个事件,举个例子: Document 1 2 $(function(){ $("#div1").click(funct

2017-02-16 10:27:49 273

原创 如何使用svn

这篇文章只是针对已经安装好了svn的小伙伴,如果没有安装的话就去官网下一个来安装就行了,在网上搜TortoiseSVN就会有一大堆的链接,直接下就行了,好了,开始进入主题::                当我们安装好了svn后要怎么实现上传和下载文件呢?首先打开你的svn,看到如下界面:然后在Repositories上右击并且新建一个库(一直点下一步就好),在user上也是新建一

2017-02-13 23:43:43 257

空空如也

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

TA关注的人

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