微信小程序 仿貓眼實(shí)現(xiàn)實(shí)例代碼
微信小程序仿貓眼
實(shí)現(xiàn)效果圖:
movie.js
Page({ data: { movies:null, scrollTop : 0, scrollHeight:0 }, onLoad: function (options) { // 生命周期函數(shù)--監(jiān)聽(tīng)頁(yè)面加載 // 這里要非常注意,微信的scroll-view必須要設(shè)置高度才能監(jiān)聽(tīng)滾動(dòng)事件,所以,需要在頁(yè)面的onLoad事件中給scroll-view的高度賦值 var that = this; wx.getSystemInfo({ success:function(res){ console.info(res.windowHeight); that.setData({ scrollHeight:res.windowHeight }); } }); that.getAllMovies(); }, getAllMovies() { let thispage=this; //展示 加載框 wx.showToast({ title: '加載中', icon: 'loading', duration: 10000 }) //網(wǎng)絡(luò)請(qǐng)求數(shù)據(jù) wx.request({ url: 'http://m.maoyan.com/movie/list.json?type=hot&offset=0&limit=1000', method: 'GET', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT header: {'content-type':'json'}, // 設(shè)置請(qǐng)求的 header success: function(res){ // success let obj=res.data.data.movies; //將獲取到的數(shù)據(jù)設(shè)置到 page 中的movies上 thispage.setData({movies:obj}); //隱藏加載框 wx.hideToast(); //停止刷新 wx.stopPullDownRefresh(); }, fail: function() { // fail }, complete: function() { // complete } }) }, //點(diǎn)擊事件 itemClick(event){ }, //刷新 onPullDownRefresh: function () { this.getAllMovies(); }, })
movie.json
{ "enablePullDownRefresh": true }
movie.wxml
<view class="top"> <text class="top_text">深圳</text> <view class="top_input"> <input placeholder="Q找影視劇、找影院" /> </view> </view> <view class="item" wx:for="{{movies}}" wx:key="{{index}}" bindtap="itemClick" hover-class="item_press" hover="true" > <view class="pic"> <image src="{{item.img}}"></image> </view> <view class="detail"> <title>{{item.nm}} <text class="threeD" wx:if='{{item["3d"]}}'>3D</text> <text class="iMax" wx:if='{{item["imax"]}}'>IMAX</text> <text class="score" wx:if="{{item.preSale !=1}}">{{item.sc}}<text style='font-size:11px'>分</text> </text> <text class="wish" wx:else>{{item.wish}}<text style='font-size:11px'>人想看</text> </text> </title> <view class="type"> {{item.cat}} </view> <view class="star"> {{item.star}} </view> <view class="showinfo"> {{item.showInfo}} </view> <view class="buy" wx:if="{{item.preSale !=1}}" >購(gòu)買</view> <view class="buy" wx:else style="background:#008aff">預(yù)售</view> </view> </view>
movie.wxss
page{ background-color: #f2f2f2; } .top { background-color: #f2f2f2; display: flex; } .top_text { margin-left: 15px; font-size: 15px; padding: 20px 0; } .top_input { border-radius: 10rpx; text-align: center; padding: 4px; font-size: 15px; flex: 1; margin: 10px 20px 10px 10px; background-color: #fff; } .item { background-color: #FFFFFF; position:relative; padding: 10px; display: flex; border-width:1px; border-bottom-style: solid; border-color: #ccc; } .item_press { background-color: #F0F0F0; } .pic image { margin-right: 10px; width: 70px; height: 100px; } .detail{ flex: 1; display: flex; flex-direction: column; } .detail title{ margin-top: 5px; color: #222222; flex: 1; font-size: 16px; } .threeD{ border-radius: 2px; padding: 3px; background-color: #8bb7ce; font-size: 10px; color: white; } .iMax{ border-style:solid; border-width:1px; margin-left: -2px; border-top-right-radius: 2px; border-bottom-right-radius: 2px; font-size: 10px; color: #8bb7ce; padding: 2px; } .score, .wish{ float:right; color: orange; margin-right: 15px; } .type, .star{ color: #666666; font-size: 13px; overflow:hidden; white-space: nowrap; text-overflow:ellipsis; width: 210px; flex: 1; } .showinfo{ color: #999999; font-size: 13px; flex: 1; } .buy{ padding: 8px; border-radius: 5px; font-size: 13px; color: #FFFFFF; background-color: #ee4137; float: right; position: absolute; right: 10px; top:52px; }
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
JavaScript與JQuery框架基礎(chǔ)入門(mén)教程
這篇文章主要介紹了jQuery和JavaScript入門(mén)基礎(chǔ)知識(shí)學(xué)習(xí)指南,jQuery是當(dāng)下最主流人氣最高的JavaScript庫(kù),需要的朋友可以參考下2021-07-07純js實(shí)現(xiàn)高度可擴(kuò)展關(guān)鍵詞高亮方案詳解
這篇文章主要為大家介紹了純js實(shí)現(xiàn)高度可擴(kuò)展關(guān)鍵詞高亮方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08three.js-結(jié)合dat.gui實(shí)現(xiàn)界面可視化修改及調(diào)試詳解
這篇文章主要為大家介紹了three.js-結(jié)合dat.gui實(shí)現(xiàn)界面可視化修改及調(diào)試詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Intersection?Observer交叉觀察器示例解析
這篇文章主要為大家介紹了Intersection?Observer交叉觀察器示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Vue.js React與Angular流行前端框架優(yōu)勢(shì)對(duì)比
這篇文章主要為大家介紹了Vue.js React與Angular流行前端框架優(yōu)勢(shì)對(duì)比,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03Intl對(duì)象DateTimeFormat?ListFormat?RelativeTimeFormat使用講解
這篇文章主要為大家介紹了Intl對(duì)象DateTimeFormat?ListFormat?RelativeTimeFormat使用講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06微信小程序(應(yīng)用號(hào))簡(jiǎn)單實(shí)例應(yīng)用及實(shí)例詳解
這篇文章主要介紹了微信小程序(應(yīng)用號(hào))簡(jiǎn)單實(shí)例應(yīng)用的相關(guān)資料,需要的朋友可以參考下2016-09-09