// pages/domain/domain.js Page({ /** * 页面的初始数据 */ data: { indicatorWidth: 0, scrollWidth: 0, //滚动视图的总宽度 screenWidth: 0, //屏幕宽度 sliderWidth: 10, //指示器宽度 lastScrollLeft: 0, lastScrollTop: 0, defaultSliderWidth: 10, //默认指示器宽度 }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { var window = wx.getWindowInfo() var screenWidth = window.screenWidth this.setData({ screenWidth: screenWidth - 34 }) }, onReady() { var _self = this setTimeout(_ => { const query = wx.createSelectorQuery().in(this) query.selectAll('.plates-item').boundingClientRect() query.exec(res => { let width = 0 if (res) { res[0].forEach(x => { width += x.width }) } _self.setData({ scrollWidth: width - _self.data.screenWidth }) }) }, 5) }, //监听scroll-view滚动 scrollPlates(e) { var _self = this let scrollLeft = e.detail.scrollLeft; var offsetLeft = e.detail.scrollLeft var scale = _self.data.scrollWidth / 30 var offsetX = offsetLeft / scale console.log(`${offsetX} ${offsetLeft} ${scale}`) console.log(`滚动条宽度:${_self.data.sliderWidth}---偏移量:${offsetX}`) _self.setData({ sliderWidth: _self.data.defaultSliderWidth + offsetX, lastScrollLeft: scrollLeft }) }, //公司详情 showCompany() { wx.navigateTo({ url: '/pages/company/company', }) }, //园区详情 showGarden() { wx.navigateTo({ url: '/pages/garden/garden', }) } })