免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持APP、电脑端、小程序、IOS免签等等

h5做的app如何手势返回

在移动应用的界面设计中,手势返回已经成为一种非常流行的方式。手势返回通常是在应用程序的子页面和内容页面之间进行操作,将最后一个页面从右往左滑动,就可以返回到上一个页面。本文将讨论在H5应用程序中如何实现手势返回的原理和详细介绍。

## 原理

手势返回的实现基本上依赖于两个要素:touch事件和CSS3的transform工具。touch事件是在HTML5中引入的,它用于捕获触摸设备上的手指上下移动、单击、双击等各种操作事件。transform工具是一组CSS3中用于实现位置变换的规范。手势返回的原理是这样的:当用户在touchmove事件中往左滑动时,应用程序将捕捉到手势事件的坐标。然后使用CSS3中的translateX属性实现视图的移动,这样用户就可以看到当前视图从右边到左边的动态效果。当用户手指抬起而不滑动时或者页面滑动到一半而终止时,应用程序判断页面应该停留在哪个位置,以实现正确的手势返回效果。

## 详细介绍

手势返回的实现通常涉及三个部分:JavaScript、CSS和HTML代码。虽然H5应用程序中的每个页面都可以使用这种方法来实现手势返回,但本文将专注于使用JavaScript和CSS3实现手势返回的通用方法。

### HTML代码

HTML代码通常包含两个部分:header和content。header包含一个返回按钮和标题,而content包含应用程序的主体。

```html

Gestures demo

文章标题

文章正文内容

```

### JavaScript代码

JavaScript代码负责事件监听和DOM操作,通常会有三个需要监听的事件:touchstart、touchmove和touchend。

```javascript

var startX, startY, endX, endY;

var threshold = 50; // 默认手势移动距离阈值为50px

var viewWidth = window.innerWidth;

var content = document.querySelector('.content');

content.addEventListener('touchstart', function(event) {

startX = event.touches[0].pageX;

startY = event.touches[0].pageY;

});

content.addEventListener('touchmove', function(event) {

endX = event.touches[0].pageX;

endY = event.touches[0].pageY;

var deltaX = endX - startX;

var deltaY = endY - startY;

if (Math.abs(deltaX) > Math.abs(deltaY)) {

// 取消事件的默认行为和冒泡

event.preventDefault();

event.stopPropagation();

if (deltaX > 0) {

// 先算最大值

var translateX = Math.min(0, deltaX);

// 再算最小值

translateX = Math.max(-(viewWidth - threshold), translateX);

content.style.transform = 'translateX(' + translateX + 'px)';

}

}

});

content.addEventListener('touchend', function(event) {

var deltaX = endX - startX;

var translateX = 0;

if (deltaX > 0 && deltaX > threshold) {

translateX = -(viewWidth - threshold);

content.style.transition = 'transform 0.3s ease-in-out';

} else {

content.style.transition = 'transform 0.6s ease-in-out';

}

content.style.transform = 'translateX(' + translateX + 'px)';

});

```

### CSS代码

CSS代码通过transition实现手势返回的动态效果。

```css

body {

margin: 0;

}

header {

background-color: #eee;

height: 64px;

display: flex;

justify-content: space-between;

align-items: center;

padding: 0 16px;

box-shadow: 2px 2px 4px #888;

}

.content {

padding: 16px;

transform: translateX(0px);

transition: transform 0.6s ease-in-out;

}

.back-button {

border: 0;

font-size: 16px;

background-color: transparent;

outline: none;

}

```

## 总结

手势返回是一种非常流行、实用的应用程序交互方式,在H5应用程序中的实现完全采用了HTML5、CSS3和JavaScript等现代化技术。H5应用程序的手势返回实现包括touch事件监听和CSS3的transform工具的使用,以及设置动态效果的过渡动画等步骤。掌握这些知识,开发者可以很轻松地实现流畅的手势返回交互效果,提升用户体验。


相关知识:
做网页和app
网页和app是两个不同的概念,前者是在浏览器上运行的网站页面,而后者是在移动设备上运行的应用程序。它们的开发方法和技术也有所不同。一、网页开发网页开发是指使用HTML、CSS、JavaScript等前端技术和PHP、Java、Python等后端技术,以及S
2023-05-18
做个网站带app
现代社会,人们越来越离不开互联网,我们可以在互联网上购物、查资料、社交、娱乐等等,而网站和APP是我们使用互联网最常用的方式。那么如何做一个网站带APP呢?简单来说,我们需要掌握以下步骤:第一步:确定网站和APP的功能和类型在制作网站和APP之前,需要确定
2023-05-18
做app小程序网站怎么找客源
做app、小程序、网站已经成为现代化商业发展不可或缺的环节。但在做这个的过程中,如何获取客源也成为一个相当重要的问题。本文将从原理和详细介绍两个方面来分析做app小程序网站如何找客源。一、原理1. 找到目标客户首先,在找客源之前,要搞清楚需要找到的是哪一类
2023-05-18
自建网站做app
随着智能手机的普及和移动互联网的不断发展,越来越多的人开始使用手机APP。如果你是一名网站博主,或者是一名为网站运营而奔波的工程师,你会产生一个问题:如何自建一个APP,让用户更加方便地访问你的网站?本文将介绍自建网站做APP的原理和方法。自建网站做APP
2023-05-18
有哪些app是用vue做的
Vue.js 是一个流行的 JavaScript 框架,用于构建现代的 Web 应用程序。近年来,越来越多的开发者开始使用 Vue.js 开发移动应用程序。在本文中,我们将探讨一些使用 Vue.js 构建的流行应用程序。1. 微信读书微信读书是一款著名的阅
2023-05-18
如何做好app网页设计
对于现代移动设备的用户而言,应用程序是他们生活的重要组成部分。人们使用应用程序来完成各种各样的任务,包括购物、社交、娱乐和教育。因此,应用程序的设计在用户体验方面是至关重要的。对于设计师而言,设计出一个好的应用程序是需要考虑众多因素的,因此本文将从以下几个
2023-05-18
关于做前端的常用特效app
作为前端开发者,常常需要为网站或应用程序添加一些特效,包括动画、过渡效果、滚动效果等等。为了方便开发者实现这些效果,市场上涌现了很多特效应用程序,如下是一些常用的特效app以及其原理或详细介绍。1. JQueryJQuery是一款非常流行的JavaScri
2023-05-18
vue做离线app
Vue是一种现代JavaScript框架,其主要用于开发动态用户界面和单页应用程序。Vue提供了细粒度的组件架构,使开发人员能够在不同的应用程序组件中复用代码。这意味着开发人员可以快速构建功能丰富的应用程序,而无需耗费太多精力。Vue可以用于Web应用程序
2023-05-18
vue3做app开发
Vue3是一个渐进式Javascript框架,其提供了构建用户交互界面的工具和能力。在App开发中,Vue3作为一种前端框架,可以提供许多优化和增强的功能。在这篇文章中,我们将深入探讨如何使用Vue3来开发移动App以及其原理。一、Vue3的基础知识在开始
2023-05-18
vue做混合app开发
Vue.js 是一款轻量级的前端 JS 框架。它具有渐进式的特点,可以用于开发单页面应用程序 (SPA) 以及混合应用程序。混合应用程序是指可以在不同平台上安装和运行的应用程序。一个混合应用程序可以同时在 Android 和 iOS 设备上运行,这个应用程
2023-05-18
h5页面做成app
H5页面是一种基于HTML5技术开发的网页,其常用于移动应用程序开发中。通过将H5页面转化为APP,可以让网页应用程序在移动设备上变得更加便捷、高效、更容易使用。在介绍如何将H5页面转化为App之前,我们需要了解两个关键的概念:Hybrid App和Web
2023-05-18
h5做app框架
H5做App框架,通常涉及到以下三个工具或技术。第一是Cordova,它是一个开源的跨平台移动应用开发框架,可以让开发人员使用HTML,CSS和JavaScript等Web技术来构建移动应用,同时可以在移动设备上使用一系列的API,例如相机,文件,联系人等
2023-05-18
©2015-2021 智电瑞创 蜀ICP备17039183号