我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Vue实现拖拽式分割布局

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Vue实现拖拽式分割布局

本文实例为大家分享了Vue实现拖拽式分割布局的具体代码,供大家参考,具体内容如下

示例展示

代码

特地写了一个demo代码,可以直接复制下来运行

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <script class="lazy" data-src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <title>Document</title>
</head>
<body>
<div id="app">
  <div class='container' id='container'>
    <div id='top' class='top'>top</div>
    <div id='bar' class='bar'></div>
    <div id='bottom' class='bottom'>bottom</div>
  </div>
</div>
<script>
var app = new Vue({
    el: '#app',
    data: {
    },
    mounted(){
      this.dragChangeHeight('bar','top')
    },
    methods:{
      dragChangeHeight(drag, panel) {
        var dragEl = document.getElementById(drag)
        var panelEl = document.getElementById(panel)
        dragEl.onmousedown = function(ev) {
          var disH = panelEl.offsetHeight
          var disY = ev.clientY
          var disT = panelEl.offsetTop
          var b = ''
          
          document.onmousemove = function(ev) {
            panelEl.style.height = disH + (ev.clientY - disY) + 'px'
            // panelEl.style.top = disL - (ev.clientY - disY) + 'px'
          }

          document.onmouseup = function() {
            document.onmousemove = document.onmouseup = null
          }
          return false
        }
      },
      dragChangeWidth(drag, panel) {
        var dragEl = document.getElementById(drag)
        var panelEl = document.getElementById(panel)
        dragEl.onmousedown = function(ev) {
          var disW = panelEl.offsetWidth
          var disX = ev.clientX
          var disL = panelEl.offsetLeft
          var b = ''

          document.onmousemove = function(ev) {
              panelEl.style.width = disW + (ev.clientX - disX) + 'px'
              // panelEl.style.left = disL - (ev.clientX - disX) + 'px'
          }

          document.onmouseup = function() {
            document.onmousemove = document.onmouseup = null
          }
          return false
        }
      },
    }
})
</script>

<style>
  body{
    margin: 0;
  }
  .container{
    
    
    height: 90vh;
    width: 90vw;
    display: flex;
    flex-direction: column;
  }
  .top{
    width: 100%;
    height: 300px;
    background-color: blue;
  }
  .bar{
    width: 100%;
    height: 10px;
    cursor: n-resize;
    background-color: black;
  }
  .bottom{
    width: 100%;
    flex: auto;
    background-color: red;
  }
</style>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Vue实现拖拽式分割布局

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何使用HTML和CSS实现拖拽式布局

拖拽式布局是一种常见且实用的网页布局方式,它允许用户通过鼠标拖拽的方式来调整页面中元素的位置。在本文中,我们将介绍如何使用HTML和CSS来实现这种拖拽式布局,并提供一些具体的代码示例供参考。实现拖拽式布局的关键技术是使用HTML5中的Dr
2023-10-21

纯CSS怎样实现左右拖拽改变布局大小

这篇文章将为大家详细讲解有关纯CSS怎样实现左右拖拽改变布局大小,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。利用浏览器非overflow:auto元素设置resize可以拉伸的特性实现无JavaScri
2023-06-08

vue+uniapp瀑布流布局多种实现方式示例代码

由于使用uniapp开发的微信小程序不需要考虑响应式,因此瀑布流的实现相对于pc端更为简单,下面这篇文章主要给大家介绍了关于vue+uniapp瀑布流布局多种实现方式的相关资料,需要的朋友可以参考下
2023-03-23

利用Redis实现分布式全局ID生成

利用Redis实现分布式全局ID生成随着互联网的发展,分布式系统的应用场景越来越多,如何生成全局唯一的ID成为了一个非常重要的问题。传统的自增ID,由于单点数据源的限制,无法满足分布式系统的需要。利用Redis作为分布式系统的全局ID生成器
利用Redis实现分布式全局ID生成
2023-11-08

分布式 | DBLE 新全局表检查实现浅析

作者:孙正方爱可生 DBLE 核心研发成员,拥有丰富的分布式数据库中间件开发、咨询以及调优经验,擅长数据库中间件问题排查和处理,对线上中间件部分排错有深入的实践与认知。本文来源:原创投稿*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来
分布式 | DBLE 新全局表检查实现浅析
2022-03-26

VUE怎么实现分布式医疗挂号系统预约挂号首页

这篇文章主要介绍了VUE怎么实现分布式医疗挂号系统预约挂号首页的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇VUE怎么实现分布式医疗挂号系统预约挂号首页文章都会有所收获,下面我们一起来看看吧。(1)定义布局将准
2023-06-30

编程热搜

目录