// 滚动到第一个class = error元素
scrollToFirstError() {
const query = wx.createSelectorQuery().in(this);
// 选择所有class包含'error'的view元素
query.selectAll('.error').boundingClientRect();
query.selectViewport().scrollOffset();
query.exec((res) => {
if (res[0] && res[0].length > 0) {
// 获取第一个error元素的位置信息
const firstErrorRect = res[0][0];
// 获取页面滚动位置
const scrollOffset = res[1].scrollTop;
// 计算滚动位置(顶部留出100rpx空间)
const targetPosition = firstErrorRect.top + scrollOffset - 100;
// 执行滚动
wx.pageScrollTo({
scrollTop: targetPosition,
duration: 200,
success: () => {
console.log('已滚动到第一个错误元素');
}
});
} else {
console.log('未找到class为error的元素');
}
});
},