前言
10年積累的成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有涪城免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
我們可以經(jīng)??吹绞謾C(jī)app里有的菜單欄是懸浮在首頁的,用戶可以拖動和點(diǎn)擊菜單欄進(jìn)行交互,今天代碼君就教大家利用小程序的控件,實(shí)現(xiàn)一個可移動的菜單,效果圖是這樣的,要實(shí)現(xiàn)這樣的效果,需要引出我們今天的重要人物movable-view
movable-view屬性介紹
屬性名 | 作用 | 參數(shù)值 |
---|---|---|
direction | 設(shè)置movable-view的移動方向 | 屬性值有all、vertical、horizontal、none |
inertia | movable-view是否帶有慣性 | true/false 默認(rèn)是false |
out-of-bounds | 超過可移動區(qū)域后,movable-view是否還可以移動 | true/false 默認(rèn)是false |
x | 定義x軸方向的偏移,如果x的值不在可移動范圍內(nèi),會自動移動到可移動范圍;改變x的值會觸發(fā)動畫 | number |
y | 定義y軸方向的偏移,如果y的值不在可移動范圍內(nèi),會自動移動到可移動范圍;改變y的值會觸發(fā)動畫 | number |
damping | 阻尼系數(shù),用于控制x或y改變時(shí)的動畫和過界回彈的動畫,值越大移動越快 | number 默認(rèn)是20 |
friction | 摩擦系數(shù),用于控制慣性滑動的動畫,值越大摩擦力越大,滑動越快停止;必須大于0,否則會被設(shè)置成默認(rèn)值 | number默認(rèn)是2 |
實(shí)現(xiàn)可移動菜單
一、wxml界面的實(shí)現(xiàn)
movable 菜單
界面布局比較簡單,需要注意的幾點(diǎn)
二、xxx.js隨機(jī)移動實(shí)現(xiàn)的邏輯
Page({ data: { x: 0, y: 0, isStop:false, }, moveView:function(e) { var that = this; setTimeout(function () { that.move(that); }, 1000); }, stopMove: function (e) { this.setData({ isStop: true }) }, move: function (that) { var randowX = that.GetRandomNum(1, 200); var randowY = that.GetRandomNum(1, 400); that.setData({ x: randowX, y:randowY, }) if(!that.data.isStop) { setTimeout(function () { that.move(that); }, 100); } }, //隨機(jī)函數(shù) GetRandomNum: function (Min, Max) { var Range = Max - Min; var Rand = Math.random(); return (Min + Math.round(Rand * Range)); },
js里面需要講解的內(nèi)容比較多
三、wxss樣式
.moveArea { height: 400px; width:200px; background: red; margin: 10px; } .moveView { height: 100rpx; width: 100rpx; line-height: 100rpx; background: blue; border-radius: 50%; text-align: center; margin: 10rpx; }
今天講解的樣式有一下幾個
如何把圖形從方形變成圓形?
border-radius 這是今天的主角,把他的值設(shè)置成50%,就由方形變成圓形了,這個屬性是設(shè)置圓角的,設(shè)置10%,是有一點(diǎn)圓角的方形
設(shè)置內(nèi)容垂直居中方法
這是代碼君的一個小竅門,把height和line-height設(shè)置成一樣,他自動會垂直居中
總結(jié)
今天講解的是可移動的菜單,本身實(shí)現(xiàn)是沒什么難度的,我又引入了幾個知識點(diǎn),一個是推遲事件函數(shù)的使用還有就是幾個css樣式設(shè)置的小竅門,讀者回去認(rèn)真記住使用規(guī)則,后面我們陸續(xù)會用上,好啦,今天的課程就到這~
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。