js按住鼠标左键选中网格元素,被选中的网格位置上填充可输入内容,插入图片等的容器。并且网格上的容器,可拖动、改变尺寸、但互相之间不可重叠(如果重叠回到上一次的状态)。

js/jquery 按住鼠标左键圈选网格,圈选网格颜色变深, 圈选区域不可重叠,被选中的网格位置上填充可输入内容,插入图片、媒体,表格、echarts图表等的容器。并且网格上的容器可拖动,可改变尺寸,但不可重叠(如果重叠回到上一次的状态),

上述要求为本次实际开发项目(vue框架)中的要求,目的是让用户创建自定义报告内容。因为将这部分交互功能单独封装了起来,所以分享出来还是希望和大家互相学习。

操作流程如下所示:

一、按住鼠标左键拖动鼠标,在网格上拖动鼠标即可画出鼠标圈选的区域,如下图所示:

二、松开鼠标之后被选择的网格上覆盖一个容器,可直接输入内容,也可插入图片(插入图片本次没有演示),如下图所示:

三、容器左上角的加深颜色区域(输入划入容器上显示,划出容器隐藏),可拖动当前容器在网格区域内移动,右下角可改变当前容器在网格区域内的尺寸。如下图所示:

上图所示:在网格区域内用鼠标圈选出三个容器,对中间的容器拖拽、改变尺寸如果操作过程中和其他任意一个容器有重叠现象当鼠标松开的时候,该容器回归到上一次的状态(位置和尺寸)。

代码太多,并且代码里有注释,所以放到了GitHub上。

GitHub地址:https://github.com/dengzeyuan/js-mouse-click-chose-area-drag-sizechange

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值