仁磊他哥

@Hanson 小声点,暴露年纪。

@猫貉子 Safari 还是比较大胆的,直接不支持了,不像 Chrome 还能苟一段时间。

Hanson

曾几何时,用过txt文件来存储页面数据~

猫貉子

离了个大普,去年刚学的 WebSQL 这就作废了,前端真是谜一样的神奇😣

大壮

我来过~

升而无畏

日常膜拜

@回家的流星 群里有小伙伴讨论过类似问题,我把回答整理下吧 这个方法看起来是可行的,不过有两个问题 - 拖拽的过程中,要尽力避免去读取 dom 的状态,通过 target 判断一般还需要还再向上遍历父级节点,实现起来会比较卡 - 另一个弊端是会触发无关元素的 hover,拖拽效果不稳定

回家的流星

不懂,为什么需要提前将目标收集起来呢,mousemove 的过程中不是会在 event.target 中上体现出目标元素吗 ?

@二狗 文章里主要在写拖拽的原理,具体命中逻辑并没有展开聊。 我这边判断拖拽行为的顺序有三个 - 第一顺序是拿鼠标位置与所有区块做对比,命中哪个区块就是覆盖 - 第二顺序是,判断是否在区块水平左侧20像素内,命中的话就是插入行为 - 第三顺序是,判断是否在删除、调整尺寸的区域,命中的话就是这类交互 - 如果都没有命中的话,那就是cancel

二狗

看完受益颇多 不过还有个疑问 拖拽过程中 节点交互是如何设计与实现的呢

@404修复者 这是五年前整理的文章了,和目前的代码多少有点出入。 现在已经不打算做相关初始化支持了,自己也已经三年多没换服务器了,勉强还能跑起来,悲催。

404修复者

// 第一步,引入环境变量配置 require('dotenv').config({ path: '../.env' }) 这个是不是少个env后缀的环境变量配置文件呐

@Mofei 博客一般只分享前端相关的知识经验,并不需要功能更丰富的代码高亮库。所以博客里的代码高亮为手写的一个小工具,不计算 CSS 的话,代码量也只有两百行左右。 感兴趣的话可以查看这个链接:[https://github.com/bh-lay/.../highlight.js](https://github.com/bh-lay/blog/blob/master/frontEnd/single-page/src/assets/js/highlight.js)

Mofei

大佬,文章中的代码格式化高亮用的是什么插件?