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

网站全屏轮播怎么做怎样申请小程序

网站全屏轮播怎么做,怎样申请小程序,大都会app下载二维码,广州软件开发问题描述:默认情况下 vue-grid-layout 移动卡片到页面底部时页面滚动条并不会跟随卡片滚动。 问题解决: 在 grid-item中的move事件中,获取到当前移动的元素,并使用scrollIntoView方法来实现滚动条跟随。 代码如下: c…

问题描述:默认情况下 vue-grid-layout 移动卡片到页面底部时页面滚动条并不会跟随卡片滚动。

在这里插入图片描述

问题解决:

grid-item中的move事件中,获取到当前移动的元素,并使用scrollIntoView方法来实现滚动条跟随。
代码如下:

const moveEvent = (i: any) => {let cIdx = layout.value.findIndex(item => item.i === i)let el = gridItemRefs.value[cIdx].$elsetTimeout(() => {el?.scrollIntoView({ behavior: "smooth", block: "end" })}, 300)
}

此时优化效果如下:
在这里插入图片描述

  • 但是上面优化还有一个小问题,将卡片右移可以无效无限右移。
    所以根据元素的lastX来控制一下:
const moveEvent = (i: any) => {let cIdx = layout.value.findIndex(item => item.i === i)let el = gridItemRefs.value[cIdx].$elsetTimeout(() => {console.log(gridItemRefs.value[cIdx].lastX, '===gridItemRefs.value[cIdx]');if (gridItemRefs.value[cIdx].lastX < 900) {el?.scrollIntoView({ behavior: "smooth", block: "end" })}}, 300)
}

同理,如果是从外层拖到元素进来,也可以使用 scrollIntoView来设置滚动条跟随。
代码如下:
在这里插入图片描述

const colNum = 12
const drag = (item: any) => {let parentRect = document.getElementById('content')?.getBoundingClientRect()!;let mouseInGrid = false;if (((mouseXY.x > parentRect.left) && (mouseXY.x < parentRect.right)) && ((mouseXY.y > parentRect.top) && (mouseXY.y < parentRect.bottom))) {mouseInGrid = true;}if (mouseInGrid === true && (layout.value.findIndex(item => item.i === 'drop')) === -1) {layout.value.push({x: (layout.value.length * 2) % (colNum || 12),y: layout.value.length + (colNum || 12), // puts it at the bottomw: item.w,h: item.h,i: 'drop',});}let index = layout.value.findIndex(item => item.i === 'drop');if (index !== -1) {try {gridItemRefs.value[layout.value.length - 1].$refs.item.style.display = "none";} catch {}let el = gridItemRefs.value[index];if (el) {setTimeout(() => {el.$el?.scrollIntoView({ behavior: "smooth", block: "nearest" })}, 300)el.dragging = { "top": mouseXY.y - parentRect.top, "left": mouseXY.x - parentRect.left };let new_pos = el.calcXY(mouseXY.y - parentRect.top, mouseXY.x - parentRect.left);if (mouseInGrid === true) {gridlayout.value.dragEvent('dragstart', 'drop', new_pos.x || 0, new_pos.y || 0, item.h, item.w);// dragEvent('dragstart', 'drop', new_pos.x || 0, new_pos.y || 0, defaultH, defaultW);DragPos.i = String(new Date().getTime());DragPos.x = layout.value[index].x;DragPos.y = layout.value[index].y;DragPos.w = layout.value[index].w;DragPos.h = layout.value[index].h;}if (mouseInGrid === false) {gridlayout.value.dragEvent('dragend', 'drop', new_pos.x || 0, new_pos.y || 0, item.h, item.w);// dragEvent('dragend', 'drop', new_pos.x || 0, new_pos.y || 0, defaultH, defaultW);layout.value = layout.value.filter(obj => obj.i !== 'drop');}}}
}
const dragend = () => {let parentRect = document.getElementById('content')?.getBoundingClientRect()!;let mouseInGrid = false;if (((mouseXY.x > parentRect.left) && (mouseXY.x < parentRect.right)) && ((mouseXY.y > parentRect.top) && (mouseXY.y < parentRect.bottom))) {mouseInGrid = true;}if (mouseInGrid === true) {gridlayout.value.dragEvent('dragend', 'drop', DragPos.x, DragPos.y, DragPos.h, DragPos.w);let delIndex = layout.value.findIndex(item => item.i === 'drop')layout.value.splice(delIndex, 1)// UNCOMMENT below if you want to add a grid-itemlayout.value.push({x: DragPos.x,y: DragPos.y,w: DragPos.w,h: DragPos.h,i: DragPos.i,});gridlayout.value.dragEvent('dragend', DragPos.i, DragPos.x, DragPos.y, DragPos.h, DragPos.w);try {gridItemRefs.value[layout.value.length - 1].$refs.item.style.display = "block";} catch {}}
}
http://www.yayakq.cn/news/661214/

相关文章:

  • 肇庆城乡建设网站深圳网站免费制作
  • wordpress 导航站主题衡阳seo外包
  • 医院网站建设情况汇报织梦做的网站_别人提交给我留的言我去哪里看
  • 建网站的目的慈溪app开发公司
  • 一个人做网站的难度熊掌号WordPress推送
  • 德州有名的网站建设公司如何做产品众筹网站
  • 麻涌手机网站设计6618自助建站系统源码
  • 网页网站设计公司排行榜做电子商务网站的公司
  • 阿里logo设计平台北京网站优化企业
  • 网站的建设哪家好信阳网站建设汉狮报价
  • 包头网站建设哪家好上海建设检测网上登记网站
  • 美食网站的设计与实现自己做软件的网站
  • 联合加工网昆明市网络优化案例
  • 哈尔滨门户网站设计报价中药网站模板
  • 莱州网站建设效果南宁网络公司有哪些
  • 无线网站制作做网站用哪个eclipse
  • 旅游门户网站系统网站开发合同缺陷
  • 网站开发报价 福州免费销售管理系统软件
  • 国内网站做国外服务器app开发公司选择指南及误区
  • 打不开wordpress网址自动app优化官网
  • 网络优化师自学网站深圳做app网站的公司哪家好
  • 网站推广自己可以做吗wordpress 建站主题
  • 第一站长网中国住房与城乡建设厅网站
  • 友情链接的网站企业信用报告网上查询
  • 上海做网站的公司联系方式网站设计风格大全
  • 如何创建网站教程视频aso应用商店优化
  • 如何用自己的域名做网站帝国cms 商城网站视频教程
  • asp保险网站源码如何做企业组织架构图
  • 站酷网官网网址济南网站建设丨 首选搜点网络
  • 企业网站上线wordpress博客