위챗 애플릿 미니 프로그램 개발 WeChat 애플릿 개발 시 사이드바의 슬라이딩 효과를 구현하기 위한 메소드 코드

WeChat 애플릿 개발 시 사이드바의 슬라이딩 효과를 구현하기 위한 메소드 코드

Mar 17, 2017 pm 02:33 PM

사이드바 슬라이딩은 모바일 애플리케이션 개발에서 매우 일반적인 기능입니다. 물론 미니 프로그램에서도 예외는 아닙니다. 그러나 미니 프로그램이 나온 지 얼마 지나지 않아 많은 특수 효과가 아직 성숙되지 않았으며 오직 가능합니다. 그래서 오늘은 인터넷상의 모든 사람들을 위한 아주 아름다운 사이드바 특수 효과 4개를 모아봤습니다~~
NO1. 사이드바의 슬라이딩 효과는 다음과 같습니다:

 微信小程序开发中实现侧边栏的滑动效果的方法代码

where wxml 코드는 다음과 같습니다.

<!--page/one/index.wxml-->  
<view class="page"> 
    <view class="page-bottom"> 
        <view class="page-content"> 
            <view  class="wc"> 
                <text>第一个item1</text> 
            </view> 
            <view  class="wc"> 
                <text>第二个item2</text> 
            </view> 
            <view  class="wc"> 
                <text>第三个item3</text> 
            </view> 
            <view  class="wc"> 
                <text>第四个item4</text> 
            </view> 
        </view> 
    </view> 
    <view class="page-top {{open ? &#39;c-state1&#39; : &#39;&#39;}}"> 
        <image bindtap="tap_ch" src="../../images/btn.png"></image> 
    </view> 
</view>
로그인 후 복사

상하 2계층 인터페이스 구축

css3 오른쪽 쉬프트 작성애니메이션style.c-state1

wxss

.c-state1{ 
  transform: rotate(0deg) scale(1) translate(75%,0%);   
  -webkit-transform: rotate(0deg) scale(1) translate(75%,0%);   
}
로그인 후 복사

style.c-state1을 추가하려면 버튼을 클릭하세요

style.c-state1을 다시 클릭하면

NO2가 제거됩니다. 사이드바의 슬라이딩 효과는 다음과 같습니다. (특징:

슬라이드되고 화면이 축소됩니다

)

 微信小程序开发中实现侧边栏的滑动效果的方法代码

wxss의 코드는 다음과 같습니다.

.c-state2{ 
  transform: rotate(0deg) scale(.8) translate(75%,0%);   
  -webkit-transform: rotate(0deg) scale(.8) translate(75%,0%);   
}
로그인 후 복사

wxml 코드는 특수효과와 동일합니다

.c-state2와 .c-state1의 유일한 차이점은 scale 값입니다

js 코드:

<font face="&quot"><font style="font-size:15px">Page({ 
  data:{ 
    open : false 
  }, 
  tap_ch: function(e){ 
    if(this.data.open){ 
      this.setData({ 
        open : false 
      });  
    }else{ 
      this.setData({ 
        open : true 
      });  
    } 
  } 
})  </font></font>
로그인 후 복사

코드는 매우 간단합니다. 뷰의 클래스 선택을 제어하는 ​​것입니다. 오픈 값을 통해

NO3. 사이드바의 슬라이딩 효과는 다음과 같습니다. (특징: 버튼을 클릭하여 측면 슬라이딩을 실행할 수 있을 뿐만 아니라 메인 인터페이스를 드래그하여 실행할 수도 있습니다. 측면 슬라이딩 효과)

 微信小程序开发中实现侧边栏的滑动效果的方法代码

.js 코드는 다음과 같습니다.

tap_start:function(e){ 
    // touchstart事件  
    this.data.mark = this.data.newmark = e.touches[0].pageX;  
}, 
tap_drag: function(e){ 
    // touchmove事件  
   
    /*
     * 手指从左向右移动 
     * @newmark是指移动的最新点的x轴坐标 , @mark是指原点x轴坐标 
     */ 
    this.data.newmark = e.touches[0].pageX;  
    if(this.data.mark < this.data.newmark){ 
      this.istoright = true;  
    } 
    /*
     * 手指从右向左移动 
     * @newmark是指移动的最新点的x轴坐标 , @mark是指原点x轴坐标 
     */ 
    if(this.data.mark > this.data.newmark){ 
      this.istoright = false;  
   
    } 
    this.data.mark = this.data.newmark;  
}, 
tap_end: function(e){ 
    // touchend事件  
    this.data.mark = 0;  
    this.data.newmark = 0;  
    if(this.istoright){ 
      this.setData({ 
        open : true 
      });  
    }else{ 
      this.setData({ 
        open : false 
      });  
    } 
}
로그인 후 복사

tap_drag의 판사제스처는 왼쪽에서 오른쪽으로, 또는 오른쪽에서 왼쪽으로

tap_end는 제스처가 왼쪽에서 오른쪽으로 올라가는 것을 의미합니다.

tap_end는 제스처가 올라가는 것을 의미합니다.

NO4 사이드바의 슬라이딩 효과는 다음과 같습니다.

 微信小程序开发中实现侧边栏的滑动效果的方法代码

이 특수 효과는 슬라이드 동작으로 슬라이드하세요. 놓았을 때 화면 너비의 20% 미만이면 자동으로 복원되고, 놓았을 때 20%를 초과하면 오른쪽으로 슬라이드됩니다~~

이거 효과가 굉장히 복잡해서 여러 단계로 나눠서 분석해봤습니다~

1) 제스처에 따라 화면이 움직입니다

. JS 코드는

this.setData({ 
    translate: &#39;transform: translateX(&#39;+(this.data.newmark - this.data.startmark)+&#39;px)&#39;  
})
로그인 후 복사

입니다. 문장이 핵심이고, js를 사용하여 연한 파란색 화면에서 TranslateX의 값을 제어하여 제스처가 좌우로 계속 미끄러지고 화면도 제스처에 따라 천천히 미끄러지도록 하는 것입니다.

2) 바운스 효과

화면을 화면 너비의 20% 미만으로 드래그하여 기본 상태로 복원 20%를 초과하는 경우 오른쪽으로 슬라이드하세요. ~~

JS 코드:

if(x < 20%){ 
     this.setData({ 
         translate: &#39;transform: translateX(0px)&#39;  
     }) 
}else{ 
     this.setData({ 
         translate: &#39;transform: translateX(&#39;+this.data.windowWidth*0.75+&#39;px)&#39;  
     }) 
}
로그인 후 복사

20% 미만이면translateX(0px)로 화면을 복원하고, 20%보다 크면 tanslateX(75%)를 사용하고 화면이 화면의 75%까지 오른쪽으로 이동합니다.

위 내용은 WeChat 애플릿 개발 시 사이드바의 슬라이딩 효과를 구현하기 위한 메소드 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)