Vue-drag-resize 拖拽缩放插件的使用(简单示例)


Posted in Javascript onDecember 04, 2019

字幕

<div id="lBox" style="background-color: #D7E9F5;"
     :style="{'height': parentHeight + 'px', 'width': parentWidth + 'px'}">
     
 <drag-resize v-for="(rect,index) in texts"
       style="overflow: hidden;"
       :w="rect.BoxWidth"
       :h="rect.BoxHeight"
       :x="rect.BoxLeft"
       :y="rect.BoxTop"
       @resizing="textResize($event, index)" 
       @dragging="textResize($event, index)">
       
 <div style="width: 100%; height: 100%;"
 :style={backgroundColor:rect.BoxColor,opacity:rect.BoxOpacity}>
 </div><!-- 控制背景色及背景透明度 使背景透明度不影响字幕 -->
    
 <div style="width: 100%; height: 100%;">
    <p :class="rect.Direction === 'Left to Right' ? 'roll-right' : 'roll-left'"
      style="width: 100%; position:absolute; bottom:-0.25em;left:0px"
      :style="{color: rect.TextColor,fontFamily: rect.FontFile,
     fontSize: rect.FontSize+'px',
     opacity:rect.FontOpacity,
     animationDuration: rect.Speed + 's'}">
     {{rect.Text}}
    </p>
 </div>
 
 </drag-resize>

logo

<drag-resize v-for="(rect,index) in logos"
      :parentLimitation="true"
      :w="rect.Width"
      :h="rect.Height"
      :x="rect.Left"
      :y="rect.Top"
      @resizing="logoResize($event, index)" 
      @dragging="logoResize($event, index)">
       
    <div style="width: 100%;height: 100%;">
     <img :src="'/logos/' + rect.FileName"
      style="width: 100%;height: 100%;">
    </div>
    
 </drag-resize>
</div>

JS

textResize(newRect, index) {
  const BoxWidth = newRect.width+''
  this.texts[index].BoxWidth = BoxWidth.substring(0, BoxWidth.indexOf("."))

  const BoxHeight = newRect.height+''
  this.texts[index].BoxHeight = BoxHeight.substring(0, BoxHeight.indexOf("."))

  const BoxTop = newRect.top+''
  this.texts[index].BoxTop = BoxTop.substring(0, BoxTop.indexOf("."))

  const BoxLeft = newRect.left+''
  this.texts[index].BoxLeft = BoxLeft.substring(0, BoxLeft.indexOf("."))
 }

 logoResize(newRect, index) {
  const Width = newRect.width''
  this.logos[index].Width = Width.substring(0, Size.indexOf("."))
  
  const Height = newRect.height+''
  this.logos[index].Height = Height .substring(0, Size.indexOf("."))
  
  const Top = newRect.top+''
  this.logos[index].Top = Top.substring(0, Top.indexOf("."))

  const Left = newRect.left+''
  this.logos[index].Left = Left.substring(0, Left.indexOf("."))
 }

除此之外还有字幕向左或向右滚动的CSS

.roll-left {
 animation: wordsLoopLeft 6s linear infinite normal;
 }

 .roll-right {
 animation: wordsLoopRight 6s linear infinite normal;
 }

 @keyframes wordsLoopLeft {
 0% {
  transform: translateX(100%);
  -webkit-transform: translateX(100%);
 }
 100% {
  transform: translateX(-40%);
  -webkit-transform: translateX(-40%);
 }
 }

 @keyframes wordsLoopRight {
 0% {
  transform: translateX(-40%);
  -webkit-transform: translateX(-40%);
 }
 100% {
  transform: translateX(100%);
  -webkit-transform: translateX(100%);
 }
 }

And:

自定义字体在

总结

以上所述是小编给大家介绍的Vue-drag-resize 拖拽缩放插件的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
javascript使用for循环批量注册的事件不能正确获取索引值的解决方法
Dec 20 Javascript
浅谈JavaScript中的string拥有方法的原因
Aug 28 Javascript
jQuery实现查找最近父节点的方法
Jun 23 Javascript
利用Bootstrap实现表格复选框checkbox全选
Dec 21 Javascript
JS实现的简单表单验证功能完整实例
Oct 14 Javascript
Node之简单的前后端交互(实例讲解)
Nov 14 Javascript
基于JavaScript中字符串的match与replace方法(详解)
Dec 04 Javascript
JavaScript中的回调函数实例讲解
Jan 27 Javascript
关于layui导航栏不展示下拉列表的解决方法
Sep 25 Javascript
vue改变循环遍历后的数据实例
Nov 07 Javascript
js实现左右轮播图
Jan 09 Javascript
详解JSON.stringify()的5个秘密特性
May 26 Javascript
jQuery实现全选、反选和不选功能的方法详解
Dec 04 #jQuery
JavaScript中如何对多维数组(矩阵)去重的实现
Dec 04 #Javascript
Vue实现base64编码图片间的切换功能
Dec 04 #Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
Dec 04 #Javascript
Vue实现图片与文字混输效果
Dec 04 #Javascript
环形加载进度条封装(Vue插件版和原生js版)
Dec 04 #Javascript
element-ui 远程搜索组件el-select在项目中组件化的实现代码
Dec 04 #Javascript
You might like
删除html标签得到纯文本可处理嵌套的标签
2014/04/28 PHP
thinkphp实现附件上传功能
2017/05/26 PHP
js字符编码函数区别分析
2011/12/28 Javascript
Jquery原生态实现表格header头随滚动条滚动而滚动
2014/03/18 Javascript
如何用JavaScript定义一个类
2014/09/12 Javascript
JavaScript获取Url里的参数
2014/12/18 Javascript
浅析JavaScript作用域链、执行上下文与闭包
2016/02/01 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
jQuery解决浏览器兼容性问题案例分析
2016/04/15 Javascript
jqGrid 学习笔记整理——进阶篇(一 )
2016/04/17 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
2016/09/05 Javascript
实例教学如何写vue插件
2017/11/30 Javascript
jquery点击回车键实现登录效果并默认焦点的方法
2018/03/09 jQuery
vue-cli脚手架config目录下index.js配置文件的方法
2018/03/13 Javascript
vue 注册组件的使用详解
2018/05/05 Javascript
python中关于时间和日期函数的常用计算总结(time和datatime)
2013/03/08 Python
python计算程序开始到程序结束的运行时间和程序运行的CPU时间
2013/11/28 Python
高性能web服务器框架Tornado简单实现restful接口及开发实例
2014/07/16 Python
给Python中的MySQLdb模块添加超时功能的教程
2015/05/05 Python
举例详解Python中循环语句的嵌套使用
2015/05/14 Python
在Python中pandas.DataFrame重置索引名称的实例
2018/11/06 Python
pygame实现俄罗斯方块游戏(基础篇2)
2019/10/29 Python
Tensorflow的梯度异步更新示例
2020/01/23 Python
python匿名函数lambda原理及实例解析
2020/02/07 Python
Python字符串hashlib加密模块使用案例
2020/03/10 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
2020/06/02 Python
Django启动时找不到mysqlclient问题解决方案
2020/11/11 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
python利用opencv实现颜色检测
2021/02/23 Python
纯CSS3实现的阴影效果
2014/12/24 HTML / CSS
股份转让协议书
2014/04/12 职场文书
乡镇计划生育工作汇报
2014/10/28 职场文书
2016年心理学教育培训学习心得体会
2016/01/12 职场文书
初中信息技术教学反思
2016/02/16 职场文书
2019中秋节祝福语大全,提前收藏啦
2019/09/10 职场文书