Web前端篇——el-date-picker日期弹出框大小的修改

通常情况下el-date-picker日期弹出框的大小我们很少去改到它,但是如果某些特定情况下需要我们改动它的话,可以按以下步骤实现:

1.第一步,定义一个style样式

css 复制代码
.DateStyle{
  transform-origin 0 0 !important;
}

2.第二步, 设置popper-class样式和事件监听

在el-date-picker给popper-class使用该样式,并添加一个弹出框的显示与隐藏监听visible-change

<el-date-picker

popper-class="DateStyle"

ref="datepicker"

style="margin: 0 0 0 30; width:250px;"

v-model="timeValue"

type="daterange"

:editable="false"

unlink-panels

range-separator="至"

start-placeholder="起始时间"

end-placeholder="结束时间"

@visible-change="datepickerFocus"

:shortcuts="shortcuts"

>

3.第三步,在触发的事件中缩放自己的弹出框。(这里用了jquery,请先引入jquery的js文件

在vue的methods里面定义一个datepickerFocus函数。 判断当日期弹出框显示时,给弹出框重新设置大小。(++这里的弹出框显示函数的触发稍微有一点延时,所以会先显示出默认大小,再进行缩放++。你也可以监听日期框的focus焦点事件,获取到焦点的时候立刻缩放,就不会先显示出默认大小了)

javascript 复制代码
datepickerFocus(v) {
  if (v) {
    $('.DateStyle')[0].style.transform = `scale(0.85)`; //缩放系数
    var insetStr = $('.DateStyle')[0].style.inset.split(" ");
    //这里的25px根据你布局的实际位置、缩放系数来决定, 也可以动态计算。
    $('.DateStyle')[0].style.inset = "25px " + insetStr[1] + " " + insetStr[2] + " " + insetStr[3];
  }
}
相关推荐
roamingcode2 分钟前
前端 AI Agent 多智能体协作架构:从对抗式排查到工作流解耦
前端·人工智能·架构·agent·team
蓝莓味的口香糖1 小时前
【vue】初始化 Vue 项目
前端·javascript·vue.js
光影少年2 小时前
数组去重方法
开发语言·前端·javascript
我命由我123452 小时前
浏览器的 JS 模块化支持观察记录
开发语言·前端·javascript·css·html·ecmascript·html5
weixin_443478512 小时前
Flutter第三方常用组件包之路由管理
前端·javascript·flutter
武藤一雄2 小时前
C# 异步回调与等待机制
前端·microsoft·设计模式·微软·c#·.netcore
啥都不懂的小小白2 小时前
前端CSS入门详解
前端·css
林恒smileZAZ3 小时前
前端大屏适配方案:rem、vw/vh、scale 到底选哪个?
开发语言·前端·css·css3
QQ5110082853 小时前
基于区块链的个人医疗咨询挂号信息系统vue
前端·vue.js·区块链
程序员小寒5 小时前
JavaScript设计模式(八):命令模式实现与应用
前端·javascript·设计模式·ecmascript·命令模式