记:weui.js picker坑 选项值发生偏移

在使用weui.js的picker组件时遇到默认值显示与实际选择不一致的问题,前端选择与实际返回值存在偏移,甚至导致界面溢出。尝试调整bodyHeight未果,最终通过修改offset值成功解决,但该值可能需根据页面CSS做具体调整。

代码如下 $date 为官方选择数据json传值。具体格式请查看官方例子。

        $("#trigger1").click(function () {
            weui.picker({!! $date !!}, {
                className: 'custom-classname',
                container: 'body',
                defaultValue: [],
                onChange: function (result) {
                    console.log(result)
                },
                onConfirm: function (result) {
                    console.log(result[0].label)
                    $('#trigger1').text(result[0].value)
                },
                id: 'trigger1'
            });
        });

调用用,发现前端页面使用,默认值显示和选择发生偏移。前端选择15的时候,值是14甚至是13。而且还产生界面溢出。和首项选择不到的情况
在这里插入图片描述
在这里插入图片描述
这两种情况点击确定后所得值分别为最后和第一个选项值。

解决方案:
看了github上面得issue,有说调整picker选项得高度。通过调整
bodyHeight: 5 * 30 // picker的高度,用于辅助点击滚动的计算
来尝试解决问题,还是未解决问题。最终再调整offset这个值得时候解决了问题。
可能根据不同页面CSS,这个值需要自己去调整才能解决问题。

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值