<view bind:tap="getInfo" id="t" style="height: 50px;background-color: aqua;overflow-y: auto;">
<view style="height: 200px;"></view>
</view>
function getInfo() {
wx.createSelectorQuery().select('#t').fields({
dataset: true,
size: true,
scrollOffset: true,
properties: ['scrollX', 'scrollY', 'offsetHeight'],
computedStyle: ['margin', 'backgroundColor'],
context: true,
}, function (res) {
// res.dataset // 节点的dataset
// res.width // 节点的宽度
// res.height // 节点的高度
// res.scrollLeft // 节点的水平滚动位置
// res.scrollTop // 节点的竖直滚动位置
// res.scrollX // 节点 scroll-x 属性的当前值
// res.scrollY // 节点 scroll-y 属性的当前值
// // 此处返回指定要返回的样式名
// res.margin
// res.backgroundColor
// res.context // 节点对应的 Context 对象
console.log("节点信息:", res)
}).exec()
}
滚动后打印节点信息也一直是0,scrollTop和scrollHeight一直是0:
改用scroll-view,不用view
https://developers.weixin.qq.com/s/PIfh22mG7tNw
表示的是滚动条滚动的高度,初始未滚动时的高度为0
scrollHeight是一个元素内容高度的度量,我的内容高度是200px,scrollHeight应该是200才对
viewport是什么?是指view元素吗?
你的外层元素没滚动 肯定是0啊