search.vue 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. <template>
  2. <view>
  3. <es-nav-bg ref="esNavBg">
  4. <view class="" :style="'width:'+topNav.width">
  5. <view class="es-view-w-x es es-ac" :style="'height:'+topNav.height">
  6. <view class="es-icon-ret-white" @tap="close()"></view>
  7. <view class="es-f1 es-bc-white es-ml-23 es-h-70 es-br es es-ac">
  8. <view class="es-icon-26 es-ml-27 es-icon-search-search"></view>
  9. <view class="es-f1 es-ipt es-bc-white">
  10. <input placeholder="请输入关键字搜索" class="es-fs-24" placeholder-class="es-c-b4" />
  11. </view>
  12. <view class="es-w-108 es-h-58 es-br es-bc es-mr-7 es es-ac es-pc es-fw-500 es-fs-26 es-on-act">
  13. 搜索</view>
  14. </view>
  15. </view>
  16. </view>
  17. </es-nav-bg>
  18. <es-top></es-top>
  19. <view class="" :style="'height:'+topNav.height"></view>
  20. <view class="es-view-w-x">
  21. <view class="es es-ac es-pt-15 es-pb-15">
  22. <view class="es-fs-36 es-fw-500 es-c-white es-f1">搜索发现</view>
  23. <view class="es-icon-31 es-icon-search-change"></view>
  24. </view>
  25. <view class="es-oa es-fs-24 es-fw-500 search-find">
  26. <block v-for="v,i in 8">
  27. <view class="es-br es-h-42 search-find-item es-omit es es-ac es-pc">内容</view>
  28. </block>
  29. </view>
  30. <view class="es-mt-20 es-br-20 es-bc-white">
  31. <view class="es-icon-auto es-icon-search-rank-bg">
  32. <view class="es-view-w-x es-h-122 es es-ac es-fs-46 es-fw es-c"
  33. style="font-family: Alimama ShuHeiTi;">
  34. 热门榜单
  35. </view>
  36. </view>
  37. <view class="es-view-w-x">
  38. <view class="es-h-159 es es-ac" v-for="v,i in 10" :class="i?'es-b-t':''">
  39. <view class="es-icon-auto es-w-70 es-h-66" :class="'es-icon-search-'+(i+1)" v-if="i<3"></view>
  40. <view class="es-w-70 es es-ac es-pc es-fw es-fs-30" v-else>{{i+1}}</view>
  41. <view class="es-icon-91 es-ml-24 es es-ac es-pc es-mr-24 es-p-r"
  42. :class="'es-icon-search-y'+(i+1)" style="overflow: inherit;">
  43. <view class="es-icon-80 es-br">
  44. <image src="/static/logo.png"></image>
  45. </view>
  46. <view class="es-icon es-w-80 es-h-30" :class="'es-icon-search-top'+(i+1)"
  47. style="position: absolute;top:-15rpx;" v-if="i<3"></view>
  48. </view>
  49. <view class="es-f1">
  50. <view class="es-omit es-fs-30 es-fw-500">郝万山-精讲-伤寒论</view>
  51. <view class="es es-ac">
  52. <view class="es-icon es-w-18 es-h-21 es-icon-search-fire"></view>
  53. <view class="es-c-6c es-ml-11 es-fs-26">1234</view>
  54. </view>
  55. </view>
  56. </view>
  57. </view>
  58. </view>
  59. </view>
  60. </view>
  61. </template>
  62. <script>
  63. export default {
  64. data() {
  65. return {
  66. topNav: {
  67. width: '100%',
  68. 'height':'88rpx',
  69. }
  70. }
  71. },
  72. onLoad(options) {
  73. //#ifdef MP-WEIXIN
  74. let data = wx.getMenuButtonBoundingClientRect();
  75. console.log('abcd', data);
  76. this.topNav.width = data.left + 'px';
  77. uni.getSystemInfo({
  78. success: (res) => {
  79. let span = data.top - res.safeArea.top;
  80. this.topNav.height = (span*1+data.height)+'px';
  81. console.log('style',this.topNav);
  82. }
  83. });
  84. //#endif
  85. },
  86. onPageScroll: function(e) {
  87. this.$refs.esNavBg.scrollBody(e);
  88. },
  89. methods: {
  90. close: function() {
  91. uni.navigateBack({
  92. animationType: 'pop-out',
  93. animationDuration: 200
  94. });
  95. }
  96. }
  97. }
  98. </script>
  99. <style>
  100. /* #ifdef MP-WEIXIN */
  101. .es-h-70{
  102. height: 60rpx;
  103. }
  104. .es-h-70 .es-h-58{
  105. height: 50rpx;
  106. }
  107. /* #endif */
  108. .search-find {
  109. display: flex;
  110. justify-content: space-between;
  111. flex-wrap: wrap;
  112. }
  113. .search-find-item {
  114. width: calc(25% - 26rpx);
  115. border: 1px white solid;
  116. margin-top: 10rpx;
  117. margin-bottom: 10rpx;
  118. color: white;
  119. background-size: 100% 100%;
  120. background-repeat: no-repeat;
  121. }
  122. .es-icon-search-item-bg {
  123. background-image: url(/static/images/other/search/item-bg.png);
  124. }
  125. .es-icon-search-1 {
  126. background-image: url(/static/images/other/search/1.png);
  127. }
  128. .es-icon-search-2 {
  129. background-image: url(/static/images/other/search/2.png);
  130. }
  131. .es-icon-search-3 {
  132. background-image: url(/static/images/other/search/3.png);
  133. }
  134. .es-icon-search-rank-bg {
  135. background-image: url(/static/images/other/search/rank-bg.png);
  136. }
  137. .es-icon-search-change {
  138. background-image: url(/static/images/other/search/change.png);
  139. }
  140. .es-icon-search-search {
  141. background-image: url(/static/images/other/search/search.png);
  142. }
  143. .es-icon-search-fire {
  144. background-image: url(/static/images/other/search/fire.png);
  145. }
  146. .es-icon-search-top1 {
  147. background-image: url(/static/images/other/search/TOP1.png);
  148. }
  149. .es-icon-search-top2 {
  150. background-image: url(/static/images/other/search/TOP2.png);
  151. }
  152. .es-icon-search-top3 {
  153. background-image: url(/static/images/other/search/TOP3.png);
  154. }
  155. .es-icon-search-y1 {
  156. background-image: url(/static/images/other/search/y1.png);
  157. }
  158. .es-icon-search-y2 {
  159. background-image: url(/static/images/other/search/y2.png);
  160. }
  161. .es-icon-search-y3 {
  162. background-image: url(/static/images/other/search/y3.png);
  163. }
  164. </style>