项目中需要实现与EXCEL中冻结一样的效果,即上边栏目和左侧栏目固定,数据区域上下或左右滚动。
具体实现时采用了同步滚动条的方法,
在WXML页面通过bindscroll 和 scroll-top
<scroll-view bindscroll="test2"  scroll-with-animation="false" style="height:{{sheight}};position:static" scroll-y="true" scroll-top="{{tb}}">
   
在js页面的bindscroll 事件中,通过setData设置页面绑定scroll-top值,初步实现了滚动同步的效果,但出现2个问题:
1.滚动的时候延迟较大,初步判断为setData后页面刷新有较大延迟
2.滚动停止后有错位现象想请问各位,这个问题应该怎么改进;或者有其他方式方法可以做到这个效果?
另外,微信小程序里没法直接控制元素吗?

解决方案 »

  1.   

    无法直接控制dom元素,调试工具里面你获取不到dom,会报错你可以用css的fixed定位来做,水平滚动才需要用到js控制Web开发学习资料推荐
    jqGrid事件
    javascipt修改css级联样式表类和伪类样式
      

  2.   

    谢谢版主的回答不管是垂直滚动,或者水平滚动,只满足一个方向的同步确实不需要js控制,
    但项目需要在一个页面实现水平和垂直2个方向分别同步,而js控制同步的时候有明显的延迟
    现在寻求改善延迟的方法
      

  3.   

    谢谢版主的回答不管是垂直滚动,或者水平滚动,只满足一个方向的同步确实不需要js控制,
    但项目需要在一个页面实现水平和垂直2个方向分别同步,而js控制同步的时候有明显的延迟
    现在寻求改善延迟的方法
    垂直fixed就行了,水平只能靠事件驱动,这个得靠微信支持了,而且明确说了不能频繁setData,会导致性能问题而且小程序小程序,你搞这么麻烦就不适合小程序了,做个h5页面就好了CSS表格固定表头示例