免费试用

中文化、本土化、云端化的在线跨平台软件开发工具,支持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网站的成本因很多因素而异,包括复杂性、设计、功能和开发时间等。以下是一些可能会影响商城app网站成本的因素:1.商城app的类型:商城app可以是基于iOS、Android、还是在两个平台上同时运行的混合移动应用,不同类型的商城app开发成本
2023-05-18
怎么用web做手机app
随着移动设备的普及,越来越多的企业、个人都开始关注如何将自己的网站转换成手机应用,以吸引更多的用户。其中,Web方法是主流的应用开发方式之一。本文将介绍如何使用Web技术来制作手机应用的方法和原理。1. 什么是Web技术Web技术是指基于Web的技术,包括
2023-05-18
网站app免费做
在当前的数字化时代,各行各业都需要使用或开发出自己的手机应用程序,以便更好地与用户互动。但是,将一个网站转化为一款移动应用程序是一项相当复杂的任务。幸运的是,有许多可用的工具和平台可用于使这个过程变得简单快捷。本文将介绍一些将网站转化为应用程序的方法和工具
2023-05-18
手机网站做成app的
将手机网站变成App是一种越来越流行的趋势,因为它可以帮助公司获得更多的曝光和收益。在本文中,我们将详细介绍手机网站如何变成App的原理及步骤。1. 原理将手机网站变成App的原理是通过将网站打包成一个应用程序,并添加一些额外的功能,使它在应用商店中以应用
2023-05-18
如何做一个网页app
网页App,又称Web App,是运行在浏览器环境中的应用程序,可以在多种设备上通过浏览器访问,如电脑、手机、平板等。与原生App相比,网页App具有跨平台、便于维护、升级快速等优势。下面介绍如何制作一个基于Web的应用程序。一、选择开发语言和开发工具网页
2023-05-18
如何把网页链接做成app
在现代互联网时代,越来越多的人使用移动设备来访问网站,而不是使用传统的计算机。因此,网站拥有一个与应用程序相似的外观和操作方式,已经成为了许多企业不可或缺的一部分。为了满足这种需求,有时候需要把网页链接做成app,使其更像一个独立的应用程序。下面将介绍如何
2023-05-18
哪个app做h5免费模板多
现在,随着移动互联网的快速发展,越来越多的企业和个人开始搭建自己的H5网页。但是,有些人因为技术不足,不知道从何处开始。所以,在这里我想介绍一款能够帮助你快速搭建H5网页的免费模板库APP -「易开发」。「易开发」是一款专为H5开发打造的APP。它为用户提
2023-05-18
把网站做成app的电脑软件
要将网站做成一个电脑软件,需要使用一些开发工具和技术。下面我将详细介绍如何将网站转化成一个电脑软件。一、选择开发工具开发工具是将网站转化成电脑软件所必需的工具。目前比较流行的开发工具有两种:Electron和NW.js。Electron是一种基于Node.
2023-05-18
vue做安卓app
Vue.js是一款使用简单的JavaScript框架,它是目前在互联网技术领域中最受欢迎和广泛使用的框架之一。使用Vue.js可以快速开发交互式单页面应用程序(SPA),它是开发Web应用程序的理想选择,特别是对于一些小型项目,Vue.js使用起来相当容易
2023-05-18
html做app首页
HTML是网页制作的基础,通过HTML语言可以搭建出一个完整的网站页面。但是,通过HTML也可以制作出符合APP首页的页面。首先,需要明确什么是APP首页。APP首页是指用户打开APP时,最先看到的页面。APP首页通常包含个性化设置、分类导航、推荐位等板块
2023-05-18
html5做app
HTML5 是一种网页标准,是 HTML、CSS 和 JavaScript 的组合。通过 HTML5,可以实现移动应用、桌面应用、网页游戏等一系列软件的开发。同时,HTML5 还有诸多优势,如使用简单、运行跨平台、更新方便等。那么,如何使用 HTML5 来
2023-05-18
app前端做什么
前端是指和用户交互的界面,包括网页、移动应用程序等等,是用户能够看到和使用的部分。App 前端开发是指针对移动应用程序进行开发,主要工作是将 UI 设计人员设计好的界面变成具体操作的程序,并与后台进行通讯,实现数据的交互。App 前端开发技术App 前端开
2023-05-18
©2015-2021 智电瑞创 蜀ICP备17039183号