收藏
回答

下一个基础库版本中,取消支持position: sticky?

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 客户端 6.7.3.1340 2.4.0

- 当前 Bug 的表现(可附上截图)




- 预期表现




- 提供一个最简复现 Demo

<!--moui.wxml-->
 
<template name='Navbar'>
  <view class='moui-navbar'
    style='--activeIndex:{{activeIndex}};position:sticky;top:0;padding-top:{{statusBarHeight||"20"}}px;border:0'>
    <block wx:for='{{tabs}}' wx:key='*this'>
      <view id='{{index}}' style='width:144rpx;{{textStyle||""}}' bindtap='{{bindtap}}'
        class='moui-navbar__item {{activeIndex==index?"active":""}}'>
        {{item}}
      </view>
    </block>
    <view wx:if="{{reload}}" bindtap='confirmReload' hover-class='card-hover'
      style='width:22px;height:22px;padding:10px;border-radius:50%'>
      <view class='icon-reload' style='width:22px;height:22px' />
    </view>
    <view class='moui-navbar__slider'
      style='width:32px;height:2px;left:calc((var(--activeIndex) + 0.5) * 144rpx - 16px)'/>
  </view>
</template>
 
 
<!--page-->
 
<import src='./path/to/moui.wxml' />
<template is='Navbar' data='{{...Navbar}}' />


// page.js
 
Page({
 
  data: {
    Navbar: {
      activeIndex: 0,
      ...appData.systemInfo,
      tabs: ['问卷', '收藏'],
      bindtap: 'bindChangeIndex',
      textStyle: 'transition:none;-webkit-transition:none',
    },
  },
  bindChangeIndex: function ({ currentTarget: { id }, detail: { current, source } } = {}) {
    if (id.toString() || source === 'touch') {
      let activeIndex = id.toString() || current;
      if (parseInt(activeIndex) !== this.data.Navbar.activeIndex) {
        this.setData({ ['Navbar.activeIndex']: parseInt(activeIndex) });
      }
    }
  },
});


/** app.wxss **/
@import 'style/moui.wxss';
/** https://github.com/mofong/moUI **/


最后一次编辑于  2018-09-15
回答关注问题邀请回答
收藏

2 个回答

登录 后发表内容