
JavaScript
文章平均质量分 51
秋子丫
I am hungry and foolish.
展开
-
Node 旧淘宝源 HTTPS 过期处理
淘宝源 HTTPS 过期,安装依赖报错原创 2024-03-07 16:45:15 · 1129 阅读 · 0 评论 -
使用 gulp-cleanwxss 清除小程序无用样式代码
小程序在迭代中,因没有及时清理无用样式,造成包体积越来越大。而通过人工判断清除工作量大,因而使用实现脚本清除。原创 2024-03-05 09:10:00 · 566 阅读 · 1 评论 -
微信小程序自定义 Tabbar
结合 Vant Weapp,实现小程序自定义 Tabbar,满足个性化需求原创 2023-08-04 09:56:29 · 491 阅读 · 0 评论 -
微信小程序自定义扫码界面
小程序自定义扫码功能原创 2022-12-10 20:07:22 · 2579 阅读 · 1 评论 -
TinyMce-Vue 富文本整合,实现图片、视频上传功能
之前系统富文本编辑器为百度的 UEditor, 但该项目已停止维护多年,存在开发风险,因此使用 TinyMce 来替换和扩展业务功能。一、Demo 演示二、封装步骤1、安装 tinymce-vue注:Vue 2.x 下载 3.x 版本的 tinymce-vue,Vue 3 下载 4.x 版本的 tinymce-vue ,本文为 Vue 2.x 项目yarn add @tinymce/tinymce-vue@3.2.02、封装字体类型配置const fontFormats = ` .原创 2021-11-19 19:51:59 · 8310 阅读 · 22 评论 -
微信小程序之判断目标元素是否在可视区域内
1、获取可使用窗口高度const { windowHeight } = wx.getSystemInfoSync()2、添加目标元素布局位置查询请求const query = wx.createSelectorQuery()query.select('#myElement').boundingClientRect()3、判断元素是否在可视区域内// windowHeight = top(目标元素刚进入可视区域)// windowHeight - top = height(目标元素完全进入可原创 2021-11-08 16:24:04 · 6052 阅读 · 0 评论 -
JavaScript 判断目标元素是否在可视区域内
1、获取目标元素const element = document.getElementById('myElement')2、获取目标元素的高度const elementHeight = element.clientHeight3、获取目标元素左上角相对于 Element.offsetParent 节点的垂直位移(本文中即为距离顶部的距离,不随页面滚动变化)const elementOffsetTop = element.offsetTop4、获取浏览器窗口的高度const windowH原创 2021-10-26 20:40:42 · 1841 阅读 · 0 评论 -
Vue 实现视频循环播放前 3 秒
一、需求说明视频自动播放且循环播放前 3 秒效果如下:二、实现 Demo安装 vue-video-player 依赖yarn add vue-video-player完整代码:<template> <video-player ref="videoPlayer" class="video-player-box" :options="playerOptions" @timeupdate="onPlayerTimeupdate($even原创 2021-10-24 19:10:15 · 1160 阅读 · 5 评论 -
微信小程序视频循环播放前 3 秒
一、需求说明视频列表中第一个视频,自动循环播放前 3 秒(如淘宝首页中视频模块)效果如下:二、实现 Demo<video id="productVideo" src="https://qiuzi-resource.oss-cn-shenzhen.aliyuncs.com/video.MP4" autoplay loop muted controls="{{ false }}" object-fit="cover" style="width: 270rpx;原创 2021-10-13 20:40:39 · 917 阅读 · 0 评论 -
解决 JavaScript 中数组 splice 方法删除元素被跳过或只删除部分元素
一、问题说明对数组遍历,使用 splice 方法移除符合条件的元素。由于 splice 方法改变原数组的长度,但循环中 i 仍然读取原始数组长度,造成跳过或只删除数组中符合条件的部分元素。演示 Democonst studentList = [ { name: 'Tom', grade: 55 }, { name: 'Jane', grade: 59 }, { name: 'Murphy', grade: 80 }]for(let i = 0; i < studentLi原创 2021-10-11 20:28:25 · 3143 阅读 · 1 评论 -
同源策略之 JSONP(含实践)
JSONP 在过去是服务器与客户端跨域通信的常用方法,接下来简述做法,并使用 Node 进行演示。做法第一步网页添加一个 <script> 元素,向服务器请求一个脚本,这不受同源政策限制,可以跨域请求。<script src="http://localhost:8082/jsonpTest?callback=getJsonpData"></script>注意,请求脚本网址有一个 callback 参数(?callback=getJsonpData),用来告.原创 2021-07-12 23:00:05 · 205 阅读 · 0 评论 -
解决 ES6 Module 报 Access to script at ‘xx‘ from origin ‘null‘ has been blocked by CORS policy
一、问题说明在学习 JavaScript ES6 中 Module 部分时,使用 script 标签加载 ES6,代码报错。报错信息如下:试验代码如下:二、问题追溯1、本地打开文件,引用模块为 file 协议造成的资源跨域?很多博文中都对这个问题作出如下判定。可是我又想,平时 HTML 文件中引入 file 协议的外部脚本,不也正常执行?查找一番,在 MDN 找到了答案,描述如下:2、那我把引用模块脚本放到服务器,就能正常执行?经过测试,依然报 CORS 相关错误。3、把远程服务器原创 2021-06-30 17:47:54 · 13945 阅读 · 5 评论 -
Element UI 之 Table 树形数据合并行的实现
一、需求说明Table 内容为树形结构,但需要合并收费项目重复列,具有子项的项目可展开和收起。如图:二、遇到问题1、表格数据格式[{ id: 1, name: '篮网', item: '投篮(%)', value: Number.parseInt(Math.random() * 100), children: [{ id: 311, name: '詹姆斯·哈登', item: '投篮(%)', value: N原创 2021-06-07 22:41:30 · 7638 阅读 · 4 评论 -
Element UI 之 Table 悬停光标聚光灯效果的实现
一、需求说明业务需要对数据进行核对,要求 Table 单元格具备悬停光标聚光灯效果,方便用户找到对应项(提高系统逼格)。如图:二、实现思路1、通过 cell-mouse-enter 方法获取悬停单元格坐标,坐标信息来源于 cell-class-name 属性方法补充。cellMouseEnter (row, column) { this.hoverRowIndex = row.rowIndex this.hoverColumnIndex = column.columnIndex}2、原创 2021-02-22 21:48:41 · 3625 阅读 · 11 评论 -
Vue 实现单选和多选
日常工作中,UI 库中 单选/多选 组件并不一定非常符合业务需求。这时候,不妨自己动手搞一个。单选思路选中标识值与对象标识匹配时(本例使用索引),给所在标签添加选中样式;点击标签时,更改选中标识值。代码:<template> <ul> <li v-for="(city, index) in cityList" :key="index" :class="{ checked: index === checkedIndex原创 2020-11-08 16:39:08 · 3224 阅读 · 2 评论 -
JS 获取指定 Cookie 值
JS 获取指定 Cookie 值我们知道在 JS 中,只能通过 document.cookie 获取到当前网页的 Cookie,返回的是以 ; 隔开的 Cookie 键值对字符串。在日常开发中,可以使用 js-cookie 包来操作 Cookie。若想用原生 JS 获取指定的 Cookie 值,可参考以下方法。获取 Cookie 的方法function getCookie(cookieName) { const strCookie = document.cookie const cookieL原创 2020-08-08 21:16:12 · 17565 阅读 · 7 评论