小程序
小游戏
企业微信
微信支付
扫描小程序码分享
有个需求是点击标签跳转到某一个位置,类似锚点功能。但是createSelectorQuery获取元素TOP值在内容有image组件且mode="widthFix"的情况下,获取的top值是有误的,测试了很久,发现获取的值总是有误差,测试发现,误差来源获取是图片的原始高度,但是图片的模式却是高度自动适应。这应该是个bug吧。
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
麻烦给个相关的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们定位下问题
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
wechatide://minicode/qtBngsmT7ItH
查看一下
看你是在onLoad的时候直接query的,这个时候可能图片还没加载完成,拿到的高度是image组件的默认高度。建议在图片加载完成后再query试一下
是可以,但是这里存在一个问题就是,页面有很多图片的时候我并不知道什么时候已经全部加载完成了。
createSelectorQuery,在onReady中调用时,获取的值也是有问题的。现在是使用的setTimeout去减少这个问题的出现,但是没法完全避免。现在有方法可以监听页面全部渲染完成吗?
目前是点击的时候获取了,在跳转到对应的位置
我获取的是height值也是不准确的,把mode="widthFix"改成mode=""就ok了
当
mode = "" 或者其他属性,就是获取的正常top
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
麻烦给个相关的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们定位下问题
wechatide://minicode/qtBngsmT7ItH
查看一下
看你是在onLoad的时候直接query的,这个时候可能图片还没加载完成,拿到的高度是image组件的默认高度。建议在图片加载完成后再query试一下
是可以,但是这里存在一个问题就是,页面有很多图片的时候我并不知道什么时候已经全部加载完成了。
createSelectorQuery,在onReady中调用时,获取的值也是有问题的。现在是使用的setTimeout去减少这个问题的出现,但是没法完全避免。现在有方法可以监听页面全部渲染完成吗?
目前是点击的时候获取了,在跳转到对应的位置
我获取的是height值也是不准确的,把mode="widthFix"改成mode=""就ok了
当
mode = "" 或者其他属性,就是获取的正常top