微信小程序?qū)崿F(xiàn)拉鏈?zhǔn)降幕瑒?dòng)驗(yàn)證
本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)拉鏈?zhǔn)交瑒?dòng)驗(yàn)證的具體代碼,供大家參考,具體內(nèi)容如下
view結(jié)構(gòu)
<view style="position: relative;height:90rpx">
? ? <movable-area class="content" style="width:{{area_width}}rpx">
? ? ? <movable-view class='box' style='width:{{box_width}}rpx' friction="{{100}}" direction="horizontal" x="{{x}}" damping="{{500}}" bindchange="drag" bindtouchend="dragOver">
? ? ? ? <view class='movable-icon'></view>
? ? ? </movable-view>
? ? </movable-area>
? ? <view class="black" style="width:{{text}}rpx"></view>
? ? <view class="movable_text"> 向右滑動(dòng)驗(yàn)證</view>
</view>wxss樣式
.content {
? position: absolute;
? right: 50rpx;
? height: 90rpx;
? background-color: #4fca9b;
? color: white;
? border-radius: 50px;
? display: flex;
? justify-content: center;
? align-items: center;
? font-size: 16px;
}
.box {
? z-index: 45;
? height: 90rpx;
? background-color: transparent;
? border-radius: 50rpx;
? display: flex;
? justify-content: center;
? align-items: center;
}
.movable-icon {
? z-index: 40;
? width: 120rpx;
? height: 90rpx;
? background-color: blue;
? border-radius:50rpx;?
? background-size: 100% 100%;
}
.black {
? z-index: 10;
? height: 90rpx;
? background-color: #acacac;
? position: absolute;
? right: 50rpx;
? border-radius: 50px;
}
.movable_text {
? font-size: 32rpx;
? z-index: 30;
? position: absolute;
? left: 50%;
? transform: translate(-50%, -50%);
? color: white;
? top: 50%;
}js邏輯
Page({
? data: {
? ? // 滑塊
? ? x: 0,
? ? area_width: 620, //可滑動(dòng)區(qū)域的寬,單位是百分比,設(shè)置好后自動(dòng)居中
? ? text: 620,
? ? box_width: 120, //滑塊的寬,單位是 rpx
? ? maxNum: 620;
? ? coord: '',
? },
? onShow(){
? ? ? this.data.rpx = this.getRpx() // px與rpx的轉(zhuǎn)換
? },
? ? getRpx(){
? ? var winWidth = wx.getSystemInfoSync().windowWidth;
? ? return 750 / winWidth;
? },
? ? // 滑塊
? drag(e) {
? ? let rpx = this.data.rpx
? ? var coord = e.detail.x;
? ? let wid = this.data.maxNum - (coord) * rpx
? ? this.setData({
? ? ? coord: coord,
? ? ? text: wid
? ? })
? },
? ? // 滑塊驗(yàn)證
? dragOver(e) {
? ? let rpx = this.data.rpx
? ? if ((this.data.coord) * rpx + this.data.box_width+5>= this.data.maxNum) {
? ? ? //驗(yàn)證成功之后的代碼
? ? } else {
? ? ? this.setData({
? ? ? ? x: 0,
? ? ? })
? ? }
? },這里是用了微信小程序的組件可移動(dòng)的視圖容器,有兩層容器的嵌套,通過(guò)滑塊的滑動(dòng),改變第二層的寬度,以達(dá)到拉鏈?zhǔn)降男Ч?/p>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
javascript+ajax實(shí)現(xiàn)產(chǎn)品頁(yè)面加載信息
本文給大家分享的是使用javascript結(jié)合ajax實(shí)現(xiàn)產(chǎn)品頁(yè)面無(wú)刷新加載信息的代碼,非常的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。2015-07-07
JavaScript+canvas實(shí)現(xiàn)框內(nèi)跳動(dòng)小球
這篇文章主要為大家詳細(xì)介紹了JavaScript+canvas實(shí)現(xiàn)框內(nèi)跳動(dòng)小球,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
javascript編程異常處理實(shí)例小結(jié)
這篇文章主要介紹了javascript編程異常處理的方法,結(jié)合實(shí)例形式分析總結(jié)了JavaScript編程中異常處理的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11
移動(dòng)web開(kāi)發(fā)之touch事件實(shí)例詳解
下面小編就為大家分享一篇移動(dòng)web開(kāi)發(fā)之touch事件實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01
JS簡(jiǎn)單獲取及顯示當(dāng)前時(shí)間的方法
這篇文章主要介紹了JS簡(jiǎn)單獲取及顯示當(dāng)前時(shí)間的方法,涉及javascript針對(duì)日期與時(shí)間的獲取與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2016-08-08
javascript淺層克隆、深度克隆對(duì)比及實(shí)例解析
這篇文章主要介紹了javascript淺層克隆、深度克隆對(duì)比及實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02
JavaScript 監(jiān)控微信瀏覽器且自帶返回按鈕時(shí)間
這篇文章主要介紹了JavaScript 監(jiān)控微信瀏覽器且自帶返回按鈕時(shí)間的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-11-11
Bootstrap框架實(shí)現(xiàn)廣告輪播效果
這篇文章主要為大家詳細(xì)介紹了Bootstrap框架結(jié)合JavaScript實(shí)現(xiàn)廣告輪播特效,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11
javascript 彈出的窗口返回值給父窗口具體實(shí)現(xiàn)
這篇文章主要介紹了javascript 彈出的窗口返回值給父窗口具體實(shí)現(xiàn),有需要的朋友可以參考一下2013-11-11

