scroll-fold-header.uvue 2.0 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
<template>
  <view class="top-box" :style="{height:(110 - (scrollTop>40?40:scrollTop) )+'px','background-color': 'rgba(255, 255, 255, '+(scrollTop*3>100?100:scrollTop*3)/100+')'}">
    <view class="scroll-fold-nav"
      :style="{'opacity': 1 -(scrollTop*3>100?100:scrollTop*3)/100}"
    >
      <view style="margin-left: 30px;">DCloud 为开发者而生</view>
    </view>
    <view @click="back" class="back" style="position: absolute;top:35px;left: 8px;">
      <image src="/static/template/scroll-fold-nav/back.png" style="width: 20px;" mode="widthFix"></image>
    </view>
    <view class="search" @click="toSearchPage" :style="{
      'width':maxSearchWidth - (scrollTop>40?40:scrollTop) +'rpx',
      'top':0 - (scrollTop>40?40:scrollTop) +'px'
    }">
      <view style="flex-direction: row;">
        <image src="/static/template/scroll-fold-nav/search.png" style="width: 15px;" mode="widthFix"></image>
        <text class="search-tip-text">请输入你要搜索的内容</text>
      </view>
      <text class="search-btn">搜索</text>
    </view>
  </view>
</template>

<script>
  export default {
    data() {
      return {
        scrollTop: 0,
        maxSearchWidth: 700
      }
    },
    methods: {
      toSearchPage(){
        this.$emit('toSearchPage')
      },
      back(){
        this.$emit('back')
      }
    }
  }
</script>

<style>
.top-box {
    position: fixed;
    top: 0;
    padding-top: 25px;
    align-items: flex-end;
    border-bottom: 1px solid #efefef;
  }

  .scroll-fold-nav {
    height: 44px;
    width: 750rpx;
    justify-content: center;
  }

  .search {
    background-color: #FFFFFF;
    border: 1px solid #fbdf0d;
    height: 35px;
    border-radius: 100px;
    margin: 0 25rpx;
    padding: 8px;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

  .search-tip-text {
    font-size: 12px;
    color: #666;
  }

  .search-btn {
    font-size: 12px;
    background-color: #ff6900;
    color: #FFF;
    padding: 5px 8px;
    border-radius: 100px;
  }
</style>