当前位置: 首页 > news >正文

成都模板网站建设/百度云网盘下载

成都模板网站建设,百度云网盘下载,莱芜二手房,今日军事新闻十条浏览网页时,经常看到这样一个功能,可以通过拖拽线条,改变左右区域大小 在管理后台中更为常见,菜单的宽度如果固定死,而后续新增的菜单名称又不固定,所以很可能导致换行,样式不太美观&#xff0c…

浏览网页时,经常看到这样一个功能,可以通过拖拽线条,改变左右区域大小


     在管理后台中更为常见,菜单的宽度如果固定死,而后续新增的菜单名称又不固定,所以很可能导致换行,样式不太美观,如果增加这么一个功能,效果显而易见哦

<template><div class="page" ref="page" :style="{width: `${totalWidth}px`}"><div class="left" :style="{width: `${leftWidth}px`}"><div>这是菜单,很长很长很长...</div><div>leftWidth: {{ leftWidth }}</div></div><div class="move_line" ref="splitLine"></div><div class="right" :style="{width: `${rightWidth}px`}"><div>这是右侧区域内容</div><div>rightWidth: {{ rightWidth }}</div></div></div>
</template><script>
export default {name: '',data() {return {totalWidth: 800,leftWidth: 200};},computed: {rightWidth(){return this.totalWidth - this.leftWidth - 7}},mounted() {this.handleStretch()},methods: { handleStretch(leftMinWidth = 200, rightMinWidth = 350) {// 默认左侧最小200px, 右侧最小350pxlet that = this// 获取Dom节点const pageDom = this.$refs.page, moveLineDom = this.$refs.splitLinelet moveLineDomWidth = 3// 鼠标点击, 记录移动的开始位置moveLineDom.onmousedown = (e) => {const startX = e.clientX; // 记录坐标起始位置console.log("start", startX)let sidebarInitWidth = that.leftWidth// 鼠标移动document.onmousemove = (e) => {// console.log("mousemove")const endX = e.clientX; // 鼠标拖动的终止位置let moveLen = sidebarInitWidth + (endX - startX); // 移动的距离 =  endX - startXconst maxWidth = pageDom.clientWidth - moveLineDomWidth; // 左右两边区域的总宽度 = 外层容器宽度 - 中间区域拖拉框的宽度// 右边区域最小宽度为 rightMinWidthif (moveLen > maxWidth - rightMinWidth) {moveLen = maxWidth - rightMinWidth;}// 限制左边区域的最小宽度为 leftMinWidthif (moveLen < leftMinWidth) {moveLen = leftMinWidth;}// 更新宽度that.leftWidth = moveLen};// 鼠标松开document.onmouseup = () => {document.onmousemove = null;document.onmouseup = null;moveLineDom.releaseCapture && moveLineDom.releaseCapture(); // 鼠标捕获释放};moveLineDom.setCapture && moveLineDom.setCapture(); // 启用鼠标捕获return false;};},}
}
</script><style lang="scss" scoped>
.page{border: solid 2px green;background-color: #ffffff;box-sizing: border-box;display: flex;align-items: stretch;.move_line {width: 3px;height: calc(100vh - 48px);flex-shrink: 0;background-color: #E6EDFF;cursor: col-resize;}.move_line:hover {background-color: #409EFF;}.left, .right{padding: 20px;}
}
</style>

实现效果如下:

http://www.whsansanxincailiao.cn/news/30336726.html

相关文章:

  • 网站建设模拟器/seo搜索优化服务
  • 3g网站设计/游戏代理加盟平台
  • 在郑州网站建设/百度广告一天多少钱
  • 网络设计课/宁波seo推广优化
  • 网站建设方案案例/网络软文营销案例
  • 医疗网站建设免费/广告发布平台app
  • 新华书店的做的数字阅读网站/一般开车用什么导航最好
  • 公司建设网站的费用/百度经验官网入口
  • wordpress 如何建站/班级优化大师下载安装app
  • 如何做全景素材网站/网站在线客服系统 免费
  • 龙华做手机网站建设/qq推广官网
  • 如何创建网站小程序/邀请注册推广赚钱的app
  • 做外贸大一点的网站/想在百度做推广怎么做
  • WordPress推荐主机配置/班级优化大师免费下载电脑版
  • wordpress支持手机/嘉兴百度快照优化排名
  • 建立网站的意义/如何提高网站的自然排名
  • 做模板网站赚钱吗/江门百度seo公司
  • 塘沽做网站/太原seo排名外包
  • 邯郸做移动网站价格表/厦门seo哪家强
  • 甘肃做网站哪家好/广西疫情最新消息
  • 商丘集团网站建设/杭州seo营销
  • 贸易公司 网站 扶持/搜索引擎优化是指
  • 自己做服务器和网站/无线网络优化工程师
  • 美术主题资源网站建设/百度seo排名曝光行者seo
  • 建设部网站官网 取消八大员/淘宝指数官网的网址
  • 医院门户网站建设/seo排名优化方式方法
  • 南通网络推广公司/河池网站seo
  • 个人备案网站可以做电影站吗/整站优化多少钱
  • 解决方案网站排名/百度付费推广有几种方式
  • 做app和网站哪个比较好用/宁波百度关键词推广