- 博客(208)
- 资源 (1)
- 收藏
- 关注
原创 vue-cli如何正确关闭prefetch和preload
webpack4.6.0+新增了对prefetching和preloading的支持通过在声明导入时使用内联指令可以让webpack输出“Resource Hint”,告诉浏览器。
2025-03-21 09:11:06
479
原创 前端实现 GIF 图片循环播放
使用img加载GIF图片,内容只会播放一次,之后就会自动暂停;通过定时器在一段时间后重新加载图片的方式,会导致浏览器内存不断增大,并且可能会有闪烁、卡顿的问题;
2025-02-08 16:16:47
1075
原创 storage事件中的坑,storage.setItem()无法触发storage事件
众所周知,以下代码可以用来监听页面中localstorage和sessionstorage中属性值的变化。
2025-01-07 11:21:37
392
原创 弄清preload、prefetch、dns-prefetch、defer和async
preload和prefetch是现代浏览器对标签新增的rel值,用来加快页面资源(通常是css和js)的加载速度,改善用户体验。比如。网络上对于preload和prefetch的讲解其实很多,看起来也很专业,但是看完了还是一头雾水。这次我来讲解一下。之前常见的是引用css,比如,现在rel值由stylesheet换成了preload或prefetch,会有什么区别呢?在常用用法里无法加载js,只能加载css,但是如果使用prefetch和preload,就可以加载js。
2024-11-12 09:49:09
1487
原创 你用过scrollIntoView吗?
不知道你有没有遇到这样的需求:锚点定位?进入页面某个元素需要出现在可视区?......这一类的需求归根结底就是处理元素与可视区域的关系。我接触了很多前端小伙伴,实现的方式有各种各样的,比如使用 scrollTop、监听滚动等等,这也是很多小伙伴第一个想到的。。1.基本介绍scrollIntoView 是 HTMLElement 集合下的一个 API,每一个 HTML 元素都拥有这个 API。滚动到可视区。为了更加官方一点,我们还是先来看看官方的解释。
2024-10-24 10:16:41
1101
原创 大屏可视化适配方案
核心思想:动态调整 HTML 根字体大小和 body 字体大小,结合百分比或vw/vh单位,实现容器宽高、字体大小、位移的动态适配。核心思想:通过将像素值(px)转换为视口宽度(vw)和视口高度(vh)来适配不同尺寸的屏幕,实时计算图表尺寸、字体大小等。缺点:在地图、Canvas 等带有交互的组件中,可能会出现点击事件错位问题,需针对性调整。核心思想:根据屏幕宽高比例动态缩放,代码简洁,几行代码即可实现适配。优点:基于比例缩放,能够灵活适应不同分辨率和屏幕尺寸。优点:实现简单,特别适合基本的大屏展示场景。
2024-09-11 13:35:38
1311
原创 a标签设置下载文件名无效解决方法
这种写法有个前提:href 的下载地址 和 当前网站地址 必须是。点击下载的时候,调用以上的 download 方法即可。属性,可以重置 文件名。如下代码,文件名重置为。的,否则download不生效。封装一个download方法。
2024-08-07 09:18:01
721
原创 ssh: connect to host github.com port 22: Connection timed out fatal: Could not read from remote repo
之前使用 Git 推送本地仓库至远程仓库时没问题,今天突然出现了这个错误,使用了“黑科技”之后仍然还会出现这个错误。(以前也遇到过,但都是网络问题,自己就好了)
2024-06-05 09:59:32
2052
3
原创 Vue - 以$、_开头命名的问题及源码梳理
data 中以 $、_ 开头的属性不会被代理到 this 上,但是可以通过 _data、$data 访问因为 this 上没有 $、_ 的属性,所以 watch 也无法监听 $、_ 属性的变化由于 vm._data 被 defineReactive 处理过,所以可以通过 watch _data.$xxx、_data._xxx 监听属性的变化。
2024-05-06 08:56:15
742
原创 前端实现打开新标签页后,再次定位到该标签页
A 页面点击某按钮打开了新的标签页 B,当新的标签页 B 未关闭且符合同源策略时,再次点击按钮,可以自动跳转到标签页 B。
2024-04-07 09:41:34
742
原创 如何在 HTML 中嵌套、引入其他的 HTML?
在日常开发中,书写的HTML页面往往不是独立或互不通用,通常是有些头部、尾部或者其他部分是公用的,但是HTML有不同JSP页面可以使用类似include这样的动作标记,所以接下来介绍二种HTML页面引入其他HTML页面的方法。
2024-02-27 10:10:56
2709
原创 JS的空值合并运算符??与逻辑空赋值??=
)是一个逻辑运算符,当左侧的操作数为或者时,返回其右侧操作数,否则返回左侧操作数。与不同,逻辑或运算符会在左侧操作数为时返回右侧操作数。也就是说,如果使用||来为某些变量设置默认值,可能会遇到意料之外的行为。比如为假值(例如,''或0)时。见下面的例子。将??直接与 AND(&&)和 OR(||)运算符组合使用是不可取的。(译者注:应当是因为空值合并运算符和其他逻辑运算符之间的运算优先级/运算顺序是未定义的)这种情况下会抛出。空值合并运算符针对undefined与null这两个值,也是如此。
2023-12-04 10:11:21
282
原创 CSS 实现新拟态(Neumorphism) UI 风格
什么是新拟态(Neumorphism) UI 风格?网上似乎还没有一个准确统一的定义。按照我个人的通俗理解,就是将界面的一部分凸起来,另一部分凹下去,形成的一种错落有致的拟物风格。代表作是乌克兰设计师 Alexander Plyuto 在各平台发布的新作品「Skeuomorph Mobile Banking」
2023-11-14 09:25:28
880
原创 如何使用Javascript实现缓动特效
虽然缓动特效这个词你可能没有听说过,但是绝大部分人都使用过。最典型的场景是在实现动画的过程中,无论是早期的jQuery还是CSS3里的transition,都允许你添加一个缓动特效参数,例如 linear, ease-in, ease-out等等。添加参数的效果就是让物体的变化(速度、大小或者颜色)伴随着一定的节奏,可以是均匀的,也可以是由慢至快的。为什么要研究这件事?因为我在使用Unity编写游戏的过程中需要使物体拟真,例如一辆汽车在移动到目标位置时通常是缓慢启动,随之加速,最后缓慢减速。
2023-11-02 13:35:39
297
原创 推送数据?也许你不需要 WebSocket
服务端实时推送数据,除了用 WebSocket 外,还可以用 HTTP 的 Server Send Event。只要 http 返回 Content-Type 为 text/event-stream 的 header,就可以通过 stream 的方式多次返回消息了。它传输的是 json 格式的内容,可以用来传输文本或者二进制内容。我们通过 Nest 实现了 sse 的接口,用 @Sse 装饰器标识方法,然后返回 Observe 对象就可以了。内部可以通过 observer.next 随时返回数据。
2023-10-09 09:35:16
188
原创 Git Cherry Pick命令
本篇博客详细介绍了git cherry-pick命令的使用方法和示例。通过cherry-pick命令,我们可以选择性地将特定的提交应用到其他分支上,而不需要合并整个分支。这对于合并单个提交、修复bug和提取特定功能非常有用。在使用cherry-pick命令时,需要注意可能引入的冲突以及作者和日期信息的处理。
2023-09-12 09:50:57
1107
原创 前端src和href的区别
src,会暂停其他资源的处理,直到该资源加载、解析和执行完毕,将其所指向资源应用到当前内容。这也是为什么把js文件放在底部而不是头部发热原因。href,将资源解析成css文件,并行加载请求资源,不会阻塞对当前文档的处理。src,将其所指向的资源下载并应用到当前页面,常见的有script、img。href,超文本引用,用于建立文档与资源的联系,常用的有:link、a。src和href的作用都是用于请求资源。href,用于文档与资源之间确立联系。src,请求到的资源替换当前内容。3.浏览器的解析不同。
2023-08-16 11:14:56
348
原创 el-table实现自适应高度滚动,并处理fixed的错位问题
实现elementUI的el-table自适应高度,并解决设置fixed列时带来的问题。
2023-04-03 14:01:24
6289
1
原创 gcc、g++、MingW、MSVC、make、CMake的关系
在编程环境配置中遇到诸如GNU的gcc/g++、LLVM的clang/clang++、Windows的Mingw/MSVC、还有CMake。
2022-12-02 15:34:05
528
1
原创 extern 和 extern “C“
extern 是用来进行外部声明的。谨记:声明可以多次,但是定义只能有一次。函数的声明extern关键字是可有可无的,因为函数本身不加修饰的话就是extern的。
2022-11-03 14:49:40
850
原创 Vue打包报错:提示内存溢出
提示:CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory其他方案:
2022-06-16 17:36:10
760
1
原创 文字从左向右滚动实现
使用marquee标签即可实现动态效果;但是marquee被废弃了,这里就不推荐继续使用了使用动画实现<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name=".
2022-05-06 09:21:01
413
1
原创 在项目中用ts封装axios
写在前面虽然说Fetch API已经使用率已经非常的高了,但是在一些老的浏览器还是不支持的,而且axios仍然每周都保持2000多万的下载量,这就说明了axios仍然存在不可撼动的地位,接下来我们就一步一步的去封装,实现一个灵活、可复用的一个请求请发。这篇文章封装的axios已经满足如下功能:无处不在的代码提示; 灵活的拦截器; 可以创建多个实例,灵活根据项目进行调整; 每个实例,或者说每个接口都可以灵活配置请求头、超时时间等; 取消请求(可以根据url取消单个请求也可以取消全部请求)。
2022-03-26 14:14:01
3379
《CSS揭秘》(高清-彩色).zip
2019-07-24
VS中C++使用全局变量的问题
2022-08-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人