vue 模板代码:

 <div class="content-wrap clearfix" :class="{slideIn: showIn, slideOut: showOut}">
<!--创建设备模型窗口one-->
<div class="contentOne" key="one">
<div class="header">
<span class="title">创建设备模型</span>
</div>
<el-form label-position="left" label-width="100px" ref="createModelForm" :model="createModelForm" :rules="rules">
<el-form-item label="设备模型名称" prop="productKeyName">
<el-col>
<el-input placeholder="设备模型名称(如: 零壹的人体红外传感器)" v-model="createModelForm.productKeyName" clearable></el-input>
</el-col>
</el-form-item>
<el-form-item label="设备类型" prop="formCodeName">
<el-col class="basicType">
<div @click="openModelList" style="cursor:pointer;">
<!--<span class="el-input__inner" :class="createModelForm.formCodeName?'':'placeholder'">{{createModelForm.formCodeName?createModelForm.formCodeName:'请点击选择设备类型'}}</span>-->
<el-input class="noInput" v-model="createModelForm.formCodeName" placeholder="请点击选择设备类型" readonly="readonly"></el-input>
<span class="iconfont" ></span>
</div>
</el-col>
</el-form-item>
<el-form-item label="节点类型" prop="nodeType">
<el-col>
<el-radio-group v-model="createModelForm.nodeType">
<el-radio label="1">终端设备</el-radio>
<el-radio label="2">网关</el-radio>
</el-radio-group>
</el-col>
</el-form-item>
<el-form-item label="通讯方式" prop="protocolType">
<el-col>
<el-radio-group v-model="createModelForm.protocolType">
<el-radio label="B">ZigBee</el-radio>
<el-radio label="A">Wifi</el-radio>
<el-radio label="0">其他</el-radio>
</el-radio-group>
</el-col>
</el-form-item>
<el-form-item label="数据格式" prop="dataFormat">
<el-col>
<el-select v-model="createModelForm.dataFormat" placeholder="请选择" disabled>
<!--<el-option-->
<!--v-for="item in options"-->
<!--:key="item.value"-->
<!--:label="item.label"-->
<!--:value="item.value">-->
<!--</el-option>-->
</el-select>
</el-col>
</el-form-item>
<el-form-item label="描述">
<el-col >
<el-input
type="textarea"
:rows="4"
placeholder="请输入内容"
v-model="createModelForm.description"
clearable>
</el-input>
</el-col>
</el-form-item>
</el-form>
<div class="footer">
<el-button @click="createModelDialog = false; showOut = false; showIn = false">取 消</el-button>
<el-button type="primary" @click="createModel">确 定</el-button>
</div>
</div>
<!--创建设备模型窗口two-->
<div class="contentTwo" key="two">
<div class="header">
<el-button class="back" @click="closeModelList">&lt;返回</el-button>
<el-button class="close" @click="closeModelList">关闭</el-button>
</div>
<div class="body">
<h1 class="title">请选择设备类型</h1>
<ul class="list">
<li
class="type"
v-for="(item, index) of basicTypeList"
:key="index"
:class="{active: liIndex === index}"
@click.stop.prevent="openTypeDetail(item, index)">
{{ item.deviceTypeName }}
</li>
</ul>
<div class="tip forbidden">找不到合适的?申请创建一个新的设备类型></div>
</div>
</div>
</div>

data:

data () {
return {
showIn: false, // 控制滑动动画
showOut: false, // 控制滑动动画
}
}

js:

 openModelList () {
this.getProductList() // 打开弹窗的时候请求数据
// this.createModelOne = false
// setTimeout(() => {
// this.createModelTwo = true
// }, 200)
this.showIn = true
this.showOut = false
},
closeModelList () {
this.showIn = !this.showIn
this.showOut = true
},

css:

 // 滑动动画
.slideIn {
animation: slideIn1 .3s ease forwards;
// animation-fill-mode: forwards;
}
.slideOut {
animation: slideOut .3s ease forwards;
// animation-fill-mode: forwards;
}
@keyframes slideIn1 {
0% {
transform: translateX(0%);
}
100% {
transform: translateX(-50%);
}
}
@keyframes slideOut {
0% {
transform: translateX(-50%);
}
100% {
transform: translateX(0%);
}
}

动画效果图:

vue 自己编写向左滑动的动画 仿transition的更多相关文章

  1. 【笔记JS/HTML/CSS】CSS3实现鼠标滑动显示动画(transition、transform)

    内容中包含 base64string 图片造成字符过多,拒绝显示

  2. 干货--手把手撸vue移动UI框架: 滑动删除

    前言 前几天因为项目需要,用jquery写了一个swiperOut组件,然后我就随便把这个组件翻译成基于Vue的了,有兴趣的朋友可以看下.Github源码(不麻烦的话帮忙start,请各位大爷赏个星星 ...

  3. 自定义UITableViewCell实现左滑动多菜单功能LeftSwipe

    今天愚人节,小伙们,愚人节快乐! 实现一个小功能,滑动菜单,显示隐藏的功能菜单, 先上图:                       这里尝试用了下使用三个方式来实现了这个功能: 1.使用自定义UI ...

  4. 写一个js向左滑动删除 交互特效的插件——Html5 touchmove

    需求描述 需要实现类似QQ中对联系人的操作:向左滑动,滑出删除按钮.滑动超过一半时松开则自动滑到底,不到一半时松开则返回原处. 纯js实现 使用了h5的touchmove等事件,以及用js动态改变cs ...

  5. iOS边练边学--简单的数据操作(增、删、改),左滑动删除和弹窗

    一.数据刷新的原则: 通过修改模型数据,来修改tableView的展示 先修改数据模型 在调用数据刷新方法 不要直接修改cell上面子控件的属性 二.增删改用到的方法: <1>重新绑定屏幕 ...

  6. android QQ消息左滑动删除实例(优化版SwipeListViewEX)

    仿 QQ消息左滑动删除item消息实例 源代码参考:http://blog.csdn.net/gaolei1201/article/details/42677951 自己作了一些调整,全部代码下载地址 ...

  7. html5向左滑动删除特效

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 5个基于css3超炫的鼠标滑动按钮动画

    今天给大家分享5个基于css3超炫的鼠标滑动按钮动画.这5个按钮鼠标经过的时候有超炫的动画效果.这5个按钮适用浏览器:360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之 ...

  9. js Touch事件(向左滑动,后退)

    js Touch事件(向左滑动,后退) 代码如下 var touch_p = { c_x : 0, c_y : 0, hasbacked : false }; function touches(ev) ...

随机推荐

  1. 转载-企业环境下MySQL5.5调优

    转载-企业环境下MySQL5.5调优 参照 腾讯云 和ucloud my.cnf 以及网上找的资料 整理出来的 my.cnf , 以后修改任何参数都会继续更新,目前是在测试阶段; 物理机 : ubun ...

  2. P1903 [国家集训队]数颜色 / 维护队列(带修莫队)

    题目描述: 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会向你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同颜色的画笔. ...

  3. javaweb-servlet获取给定文件在服务器上的绝对路径的方法

    1.通过ServletContext获取 在tomcat5,6,7版本中我们可以通过ServletContext来获取给定文件在服务器上的绝对路径. ServletContext context = ...

  4. 【Java】深拷贝和浅拷贝

    Java中的对象拷贝(Object Copy)指的是将一个对象的所有属性(成员变量)拷贝到另一个有着相同类类型的对象中去.举例说明:比如,对象A和对象B都属于类S,具有属性a和b.那么对对象A进行拷贝 ...

  5. 浏览器兼容问题--get/post

    问题描述: 人员通过发送位置在百度地图上显示出来.删除人员后,chrome地图上该人员也随即消失,但IE浏览器上仍旧存在.清除缓存后,才消失. 原因: IE下面同一个地址,不会多次去请求的.只有加一个 ...

  6. 5.5(OI一本通开始)

    一, 第一个程序有错误, 1, 每个语句(每行?0)要有分号

  7. identifier of an instance of com.xxx.model.system.xxxObject was altered from 1765 to 1766

    Caused by: org.hibernate.HibernateException: identifier of an instance of com.xxx.model.system.xxxOb ...

  8. 获取当前主题颜色 Flutter

    通过context获取当前主题颜色   Theme.of(context).accentColor

  9. CSS精灵图(王者荣耀案例)

    首先,我们应该知道引入精灵图的原因: 具体是因为,网页上面的每张图片都要经历一次请求才能展示给用户,小的图标频繁的请求服务器,降低页面的加载速度,为了有效地减少服务器接收和发送请求的次数,提高页面的加 ...

  10. 微信小程序--安装教程

    首先 奉上腾讯官方文档 方便参考:https://mp.weixin.qq.com/debug/wxadoc/design/index.html  个人认为没说啥特别有用的信息(可能是我看的太粗糙了) ...