jufubao-movie 1.0.39-beta11 → 1.0.39-beta12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jufubao-movie",
3
- "version": "1.0.39-beta11",
3
+ "version": "1.0.39-beta12",
4
4
  "private": false,
5
5
  "description": "聚福宝在线选座业务组件插件包",
6
6
  "main": "index.js",
@@ -122,8 +122,22 @@
122
122
  </view>
123
123
  <!--film hot|rightnow-->
124
124
  <!--cinema-->
125
- <view v-if="type === 'list'" id="list-filter" class="list-filter" :style="{marginTop:outSpacing + 'rpx'}">
126
- <view class="list-filter-block" :class="{hasFitler:!!curQueryTab}">
125
+ <view class="list-filter-empty" v-if="isFixed"></view>
126
+ <view
127
+ v-if="type === 'list'"
128
+ id="list-filter"
129
+ class="list-filter"
130
+ :class="{
131
+ isFixed: isFixed,
132
+ }"
133
+ :style="{
134
+ marginTop:isFixed?0:(outSpacing + 'rpx'),
135
+ top: isFixed ? ((layoutInfo.top) +'rpx'): 0,
136
+ marginLeft:isFixed?0:(-outSpacing + 'rpx'),
137
+ marginRight:isFixed?0:(-outSpacing + 'rpx'),
138
+ }"
139
+ >
140
+ <view class="list-filter-block">
127
141
  <view @click="handleFilterTab('filter')">
128
142
  <xd-font-icon icon="iconrepository-xialaxuanxiangdown" size="24" color="#999"></xd-font-icon>
129
143
  <text>{{areaName}}</text>
@@ -386,6 +400,7 @@
386
400
  preRendering:[],
387
401
  listFilterTop:null,
388
402
  listFilterTopTimer:0,
403
+ isFixed: false,
389
404
  }
390
405
  },
391
406
  computed:{
@@ -544,7 +559,7 @@
544
559
  .select('#list-filter')
545
560
  .boundingClientRect((data) => {
546
561
  if(data && data.top !==undefined){
547
- let listFilterTop = data.top - this.layoutInfo.top * this.$rpxNum - this.outSpacing * this.$rpxNum;
562
+ let listFilterTop = data.top - this.layoutInfo.top * this.$rpxNum;
548
563
  if(listFilterTop !== this.listFilterTop) {
549
564
  setTimeout(()=>{
550
565
  this.getListFilterEleTop();
@@ -662,7 +677,7 @@
662
677
  handleFilterTab(tab){
663
678
  uni.pageScrollTo({
664
679
  scrollTop: this.listFilterTop,
665
- duration: 200,
680
+ duration: 1,
666
681
  success:()=>{
667
682
  if(tab === this.curQueryTab ) {
668
683
  this.curQueryTab = ''
@@ -754,6 +769,7 @@
754
769
  if(value === this.type) return;
755
770
  this.type = value;
756
771
  if( this.type === 'hot' || this.type === 'rightnow' ) {
772
+ this.isFixed = false;
757
773
  this.virtualList.onChangeTab(this,'#content-ref', 'fixed' );
758
774
  }
759
775
  if( this.type === 'list') {
@@ -945,6 +961,12 @@
945
961
  onJfbScroll(options){
946
962
  //console.log(options.e.scrollTop)
947
963
  this.virtualList.onScrollEvent(options.e.scrollTop);
964
+
965
+ //未初始化完成不执行改逻辑
966
+ if(this.listFilterTop !== null) {
967
+ this.isFixed = options.e.scrollTop >= this.listFilterTop
968
+ }
969
+
948
970
  },
949
971
 
950
972
  setShowTypeList(){
@@ -1005,6 +1027,8 @@
1005
1027
  @import "./JfbMovieTfkFilmListLess.less";
1006
1028
 
1007
1029
  .jfb-movie-tfk-film-list {
1030
+ position: relative;
1031
+ z-index: 200;
1008
1032
  &__body{
1009
1033
  .tfk-list {
1010
1034
  & >view:first-child {
@@ -1149,9 +1173,12 @@
1149
1173
  .list-filter {
1150
1174
  position: relative;
1151
1175
  z-index: 3;
1152
- .hasFitler {
1153
- box-shadow: 0 -5rpx 20rpx 0 rgba(0,0,0, .1);
1154
- border-radius: 20rpx 20rpx 0 0;
1176
+
1177
+ &.isFixed {
1178
+ position: fixed;
1179
+ left:0;
1180
+ right: 0;
1181
+ z-index: 9999;
1155
1182
  }
1156
1183
 
1157
1184
  &-block {
@@ -1183,7 +1210,12 @@
1183
1210
  width: 100%;
1184
1211
  z-index: 3;
1185
1212
  }
1213
+
1214
+ &-empty{
1215
+ height: 100rpx;
1216
+ }
1186
1217
  }
1218
+
1187
1219
  }
1188
1220
 
1189
1221
  .noConfig {
@@ -46,7 +46,7 @@ export default {
46
46
 
47
47
  <style lang="less" scoped>
48
48
  .xd-query-filter {
49
- box-shadow: 0 5rpx 20rpx 0 rgba(0,0,0, .1);
49
+ box-shadow: 0 10rpx 20rpx 0 rgba(0,0,0, .1);
50
50
  background: #fff;
51
51
  border-radius: 0 0 20rpx 20rpx;
52
52
  }