Maison > interface Web > uni-app > Une brève discussion sur la façon dont le projet uni-app surveille les événements tactiles et coulissants

Une brève discussion sur la façon dont le projet uni-app surveille les événements tactiles et coulissants

青灯夜游
Libérer: 2021-09-14 18:54:58
avant
10448 Les gens l'ont consulté

Comment surveiller les événements dans le projet uni-app ? La colonne tutoriel uniapp suivante vous présentera la méthode de surveillance des événements tactiles et des événements coulissants dans uni-app. J'espère qu'elle vous sera utile !

Une brève discussion sur la façon dont le projet uni-app surveille les événements tactiles et coulissants

uni-app pour surveiller les événements tactiles et les événements de glissement

Documentation d'utilisation de ColorUI : https://blog.csdn.net/DevilAngelia/article/details/119447883

Les points clés des événements de glissement des doigts sont au nombre de trois événements :

1. @touchstart : Touchez démarrer ; 2. @touchmove : le processus de glissement des doigts ; 3. @touchend : le toucher se termine et le doigt quitte l'écran.

<view class="margin-top-sm showMore-box" 
	:style="{
		transform: &#39;translateX(&#39;+moveX+&#39;px)&#39;, 
		transition: transition
	}" 
	@touchstart="start" 
	@touchend="end" 
	@touchmove="move">
	<view class="radius bg-gray padding-top-sm margin-right-xl" style="flex: 1; overflow: hidden;">
		<view class="flex align-center justify-between padding-lr-sm">
			<text class="text-bold text-black">和平精英</text>
			<text class="bg-gray radius padding-lr-sm text-green">进入</text>
		</view>
		<view class="margin-top-sm padding-lr-sm">
			<text class="cuIcon-paintfill text-yellow"></text>
			<text class="text-black text-bold padding-lr-sm">战绩</text>
			<text class="text-black">和平战报已送达</text>
		</view>
		<view class="margin-top-sm padding-lr-sm">
			<text class="cuIcon-paintfill text-yellow"></text>
			<text class="text-black text-bold padding-lr-sm">直播</text>
			<text class="text-black">万场老六,细节导师</text>
		</view>
		<view class="padding-sm margin-top-sm flex align-center justify-between" style="background: #AAAAAA;">
			<text class="">更多服务</text>
			<text class="cuIcon-right"></text>
		</view>
	</view>
	<view class="radius bg-gray padding-sm flex align-center" style="width: 100vw; height: 100%; position: absolute; z-index: 1; right: calc(-100vw + 15px); top: 0;">
		<text class="cuIcon-pullleft text-gray"></text>
		<view class="text-gray padding-left-sm" style="width: 16px;">{{rightText}}</view>
	</view>
</view>
Copier après la connexion
data() {
	return {
		startData: {
			clientX: &#39;&#39;,
			clientY: &#39;&#39;,
		},
		moveX: 0,
		touch: {},
	}
},
methods: {
	// 触摸touch事件
	start(e){  //@touchstart 触摸开始
		this.transition = &#39;.1s&#39;;
	    this.startData.clientX = e.changedTouches[0].clientX;   //手指按下时的X坐标         
	    this.startData.clientY = e.changedTouches[0].clientY;   //手指按下时的Y坐标
	},
	end(e){  //@touchend触摸结束
		this.moveX = 0;  //触摸事件结束恢复原状
		this.transition = &#39;.5s&#39;;
		if(Math.abs(this.touch.clientX-this.startData.clientX) > 100) {  //在事件结束时,判断滑动的距离是否达到出发需要执行事件的要求
			console.log(&#39;执行查看跳转事件&#39;);
			// this.touch = {};
		} else {
			console.log(&#39;滑动距离不够,不执行跳转&#39;)
			// this.touch = {};
		}
	},
	move(event) {  //@touchmove触摸移动
		let touch = event.touches[0];  //滑动过程中,手指滑动的坐标信息 返回的是Objcet对象
		this.touch = touch;
		let data = touch.clientX - this.startData.clientX;
		if(touch.clientX < this.startData.clientX) {  //向左移动
			if(data<-250) {
				data = -250;
			}
		}
		if(touch.clientX > this.startData.clientX) {  //向右移动
			if(this.moveX == 0) {
				data = 0
			} else {
				if(data>50) {
					data = 50;
				}
			}
		}
		this.moveX = data;
	},
}
Copier après la connexion
.showMore-box{
	position: relative;
	// transition: all .5s;
}
Copier après la connexion

1. Avant de toucher votre doigt

Une brève discussion sur la façon dont le projet uni-app surveille les événements tactiles et coulissants

2. Touchez votre doigt et faites-le glisser vers la gauche

Une brève discussion sur la façon dont le projet uni-app surveille les événements tactiles et coulissants

3. Bibliothèque css colorUI J'écris très peu sur mes propres styles CSS et j'utilise essentiellement ses classes. À certains endroits, je suis trop paresseux pour ajuster moi-même la couleur, la distance et la taille, j'utilise donc simplement les classes colorUI, ce qui est très pratique. .

Adresse de téléchargement github colorui : https://github.com/weilanwl/ColorUI/Une brève discussion sur la façon dont le projet uni-app surveille les événements tactiles et coulissants

C'est la première fois que j'écris un effet de glissement, mais je ne l'ai pas bien écrit. Débutants, la qualité du code est préoccupante, apprenez avec ouverture d'esprit et acceptez les critiques et les corrections.

Pour plus de connaissances sur la programmation, veuillez visiter :

Introduction à la programmation

 ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:juejin.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal