自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 前端水印实现:可见水印与隐形水印

本文介绍前端水印实现方案,包含可见与隐形水印技术。可见水印采用Canvas/SVG实现全屏平铺,通过MutationObserver防止删除;SVG方案适配高DPI屏幕更清晰。隐形水幕通过LSB隐写术将信息嵌入像素最低位,实现溯源功能。文章还提供Vue指令封装方案,并指出前端水印的局限性:需配合后端权限控制,仅适用于警示和低级别溯源。最后总结了常见问题的解决方案,如DPI适配、防删除、事件穿透等。该方案适用于需要版权保护或信息溯源的Web应用场景。

2026-06-17 08:36:42 256

原创 原型链完整图解:从 __proto__ 到 class 语法糖

本文全面解析JavaScript原型链机制,涵盖以下核心内容:1. 基本概念:prototype(函数属性)和__proto__(对象属性)的区别与联系;2. 原型链工作原理:通过图解展示对象属性查找路径(直到null为止);3. 继承实现方式:详细分析原型链继承、借用构造函数、组合继承和最优的寄生组合继承方案;4. class语法本质:揭示ES6 class底层仍是基于原型链的语法糖;5. instanceof原理:通过原型链检查构造函数;6. 常见问题:包括constructor丢失、引用类型共享等问题

2026-06-11 09:38:00 321

原创 彻底搞懂 this 指向:四种绑定规则与箭头函数例外

摘要 JavaScript中的this指向问题常让开发者困惑,其值取决于函数调用方式而非定义位置。本文系统梳理了this的四种绑定规则: 默认绑定(独立调用指向全局对象) 隐式绑定(方法调用指向调用对象) 显式绑定(call/apply/bind强制指定) new绑定(构造函数指向新实例) 箭头函数例外,继承定义时的外层this且不可修改。优先级顺序为:new绑定 > 显式绑定 > 隐式绑定 > 默认绑定。文章通过React/Vue/DOM事件等实战场景解析常见陷阱,并提供判断流程图帮助开

2026-06-10 15:24:15 334

原创 闭包从原理到实战:你真的会用闭包吗?

本文系统讲解了JavaScript闭包的核心概念与应用。闭包是函数能访问定义时词法作用域变量的特性,本质是词法作用域的产物。文章通过计数器示例展示闭包如何保持变量引用,分析循环陷阱的三种解决方案(let、IIFE、bind),并列举数据私有化、函数工厂、防抖、缓存等实际应用场景。同时指出闭包可能导致的内存泄漏问题及修复方法,最后澄清常见误区。全文结合执行上下文图解和实用案例,帮助开发者深入理解并正确使用闭包。

2026-06-10 15:00:36 498

原创 uni-app 手写签名组件:支持横屏签名的完整实现(自动识别手机是否真实横屏)

本文介绍了一个基于uni-app Canvas API的手写签名组件实现方案,重点解决了竖屏场景下的布局适配问题。核心创新点是通过CSS旋转90度模拟横屏布局,并设计了触摸坐标映射算法,实现竖屏握持时的自然签名体验。组件实现了横竖屏自动检测、坐标转换、签名绘制、图片导出等功能,详细阐述了布局计算、坐标系转换原理(旋转后需交换x/y坐标并翻转y轴)等关键技术难点。文章还总结了笔画位置偏移、线条变粗等常见问题的解决方案,并提供了完整代码实现。该方案兼顾了用户体验与开发效率,适用于移动端表单签名场景。

2026-06-09 13:45:48 496

空空如也

空空如也

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

TA关注的人

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