备忘录--简单的拖拽样式

备忘录–简单的拖拽样式

html:

/<div
class=“info_box”
//动态设置定位属性
:style="{top:xAsyis+‘px’,left:yAsyis+‘px’}"
//设置可拖拽属性
draggable=“true”
//监听拖拽完成事件
@dragend=“moveIt”
//开关动画
:class=“openFlag?‘open’:‘close’”
>/

css:

.info_box {
position: fixed;
top: 50%;
left: 10px;
z-index: 999;
}

.open {
animation: openMove 0.5s forwards;
}
.close {
animation: closeMove 0.5s forwards;
}
@keyframes closeMove {
0% {
transform-origin: 0 0 0;
transform: scale(1);
opacity: 1;
}
20% {
transform-origin: 0 0 0;
transform: scale(0.8, 0.8);
opacity: 0.8;
}
40% {
transform-origin: 0 0 0;
transform: scale(0.6, 0.6);
opacity: 0.6;
}
60% {
transform: scale(0.4, 0.4);
transform-origin: 0 0 0;
opacity: 0.4;
}
80% {
transform: scale(0.2, 0.2);
transform-origin: 0 0 0;
opacity: 0.2;
}
100% {
transform: scale(0.1, 0.1);
transform-origin: 0 0 0;
opacity: 0.1;
}
}
@keyframes openMove {
100% {
transform-origin: 0 0 0;
transform: scale(1, 1);
opacity: 1;
}
80% {
transform-origin: 0 0 0;
transform: scale(0.8, 0.8);
opacity: 0.8;
}
60% {
transform-origin: 0 0 0;
transform: scale(0.6, 0.6);
opacity: 0.6;
}
40% {
transform: scale(0.4, 0.4);
transform-origin: 0 0 0;
opacity: 0.4;
}
20% {
transform: scale(0.2, 0.2);
transform-origin: 0 0 0;
opacity: 0.2;
}
0% {
transform: scale(0.1, 0.1);
transform-origin: 0 0 0;
opacity: 0.1;
}
}

js:

moveIt(e) {
this.xAsyis = e.clientY
this.yAsyis = e.clientX
},

//优化项:不直接获取事件对象的定位,通过事件对象的偏移值计算拖拽后的位置。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值