- 小程序利用safe-area-inset-*兼容iPhoneX
分别创建屏幕上边框,右边框,下边框,左边框安全距离: safe-area-inset-top, safe-area-inset-right, safe-area-inset-bottom, safe-area-inset-left 使用: iOS 11 padding-top: constant(safe-area-inset-top); padding-right: constant(safe-area-inset-right); padding-bottom: constant(safe-area-inset-bottom); padding-left: constant(safe-area-inset-left); iOS 11.2 beta及其后 padding-top: env(safe-area-inset-top); padding-right: env(safe-area-inset-right); padding-bottom: env(safe-area-inset-bottom); padding-left: env(safe-area-inset-left); 兼容性写法: padding-top: 10px; padding-top: constant(safe-area-inset-top); padding-top: env(safe-area-inset-top); 与calc合用: padding-top: 10px; padding-top: calc(10px + constant(safe-area-inset-top)); padding-top: calc(10px + env(safe-area-inset-top)); 终!使用sass@mixin: @mixin x-padding-bottom($val:0px) { padding-bottom: $val; padding-bottom: calc(#{$val / 2} + constant(safe-area-inset-bottom)); /* no */ padding-bottom: calc(#{$val / 2} + env(safe-area-inset-bottom)); /* no */ } 注意!!! 1、默认值为0px,不是0,原因是calc不支持与0计算。 2、小程序单位为rpx,一般都会转换为rpx,但是calc不支持,所以不允许转换,保持px。 参考文档:苹果官方文档
2019-10-11 - 小程序登录获取手机号下方的提示信息如何修改?
[图片]
2022-02-09 - canvas划线轨迹不跟随手指该怎么解决?
https://developers.weixin.qq.com/s/fNWsVAmo7LH4 canvas划线轨迹不跟随手指显示且越往下偏移越多
2023-04-19 - java获取用户信息问题,有示例代码吗?
加密解密这些,官方没有sdk吗?小程序在线客服都没有。希望出一份代码模板。急!
2023-02-01 - 小程序RSA加解密
小程序有没有RSA加解密的插件? 客户端使用公钥进行加解密,并非公钥加密,私钥解密
2018-08-17 - 开发工具和预览和真机调试都没问题, 但是发布版白屏报错thirdScriptError?
thirdScriptError TypeError line:2,column:1473791,TypeError: undefined is not an object (evaluating 'o.type.name') Stack:z@https://lib/WASubContext.js:2:1473791 我全局搜索根本没有type.name的调用. 这个报错我该到哪儿去解决
2021-08-19 - 微信小程序答题页 swiper分页 极简
因为最近要写个做题页面,要求左右滑动切换页面。题目数量三位数会导致swiper卡顿严重,找了下相关文章没有发现合适的,就自己写了下。 实现功能 1、可以加载大量数据 2、跳转任意index 3、实现代码简单,方便复用 [图片] 直接帖代码 // pages/swiper/swiper.js Page({ /** * 页面的初始数据 */ data: { dataList: [], //实际数据 list: [], //展示数据 currentIndex: 0, //真实的index current: 0, //swiper当前的index recordCurrent: 0, //swiper上次的index duration: 300 //动画时常 }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { for (let i = 0; i < 1000; ++i) { this.data.dataList.push(i) } this.setData({ dataList: this.data.dataList }) this.upSwiper(0) }, animationfinish({ detail }) { // 用户滑动 if (detail.source == "touch") { // 滑动后的index this.upSwiper(this.data.currentIndex + detail.current - this.data.recordCurrent) } }, upSwiper(index) { // 防止越界 if (index < 0 || index >= this.data.dataList.length) { return } this.setData({ currentIndex: index }) // 更新数据 let list = [] for (let i = this.data.currentIndex - 1; i <= this.data.currentIndex + 1; ++i) { let item = this.data.dataList[i] if (typeof (item) !== "undefined") { list.push(item) } } let current = 0; // 只要不是第一个页面 current都是1 if (index != 0) { current = 1 } // 取消动画 this.setData({ duration: 0 }) // current 和 list要同时更新,不然数据会闪 this.setData({ current: current, recordCurrent: current, duration: 300, list }) }, tap(ev) { let index = ev.currentTarget.dataset.index this.upSwiper(index) } }) <!--pages/swiper/swiper.wxml--> <swiper id="swiper" current="{{current}}" duration="{{duration}}" bindanimationfinish="animationfinish"> <swiper-item wx:for="{{list}}" wx:for-item="ee"> <view wx:for="{{20}}">{{ee}}</view> </swiper-item> </swiper> <view class="but-z"><button catchtap="tap" data-index="{{0}}">0</button> <button catchtap="tap" data-index="{{5}}">5</button> <button catchtap="tap" data-index="{{dataList.length-1}}">{{dataList.length-1}}</button> </view> /* pages/swiper/swiper.wxss */ #swiper { width: 100vw; height: 100vh; } .but-z { position: fixed; bottom: 20px; height: 40px; width: 100vw; display: flex } button { background-color: red; width: 100rpx !important; text-align: center; }
2021-12-14 - 怎么获取 iphone底部小黑条的高度?
怎么获取 iphone底部小黑条的高度?
2021-08-26 - 如何获取苹果 iphone x 以后home条的高度?
模拟器上,iphone x 机型 wx.getSystemInfo() 中得到的safeArea,感觉没有下部安全区域,那么如何计算屏幕下方home条的安全区域高度呢,还是说模拟器上显示的与真机不一样??或者是我理解陷入了误区?我只是想得到下部有home条的iphone下部安全区域高度来做适配。新人求知...
2020-05-04