recherche
Maisoninterface WebTutoriel H5Comment implémenter une simple barre de progression côté mobile via des événements tactiles HTML5

Cet article présente principalement les informations pertinentes sur la façon d'implémenter des événements tactiles HTML5 pour implémenter une simple barre de progression sur le terminal mobile. Le contenu est assez bon, je vais le partager avec vous maintenant et le donner comme référence.

Préface

De nombreux nouveaux événements ont été ajoutés au HTML, mais en raison de problèmes de compatibilité, de nombreux événements ne sont pas largement utilisés. Ensuite, je. présentera quelques événements tactiles mobiles utiles : touchstart, touchmove, touchend.

Introduction

Présentons brièvement ces événements :

  1. touchstart : déclenché lorsqu'un doigt touche l'écran, même s'il y a déjà un doigt sur l'écran.

  2. touchmove : Déclenché en continu lorsque le doigt glisse sur l'écran. Lors de cet événement, l'appel de l'événement PreventDefault() peut empêcher le défilement.

  3. touchend : déclenché lorsque le doigt quitte l'écran.

Ces événements tactiles ont des attributs dom communs. De plus, ils contiennent également trois attributs pour le suivi des touches :

  1. touches : un tableau d'objets tactiles représentant les opérations tactiles actuellement suivies.

  2. targetTouches : Tableau d'objets Touch spécifiques à la cible de l'événement.

  3. changeTouches : un tableau d'objets Touch indiquant ce qui a changé depuis le dernier contact.

Chaque objet tactile contient les propriétés suivantes :

  1. clientX : La coordonnée x de la cible tactile dans la fenêtre.

  2. clientY : La coordonnée y de la cible tactile dans la fenêtre.

  3. pageX : La coordonnée x de la cible tactile dans la page.

  4. pageY : La coordonnée y de la cible tactile dans la page.

  5. screenX : screenX : La coordonnée x de la cible tactile dans l'écran.

  6. screenY : screenX : La coordonnée x de la cible tactile dans l'écran.

  7. identifiant : un identifiant unique qui identifie le toucher.

  8. target: screenX : La coordonnée x de la cible tactile dans l'écran.

Maintenant que vous comprenez les caractéristiques des événements tactiles, commençons la passionnante séance pratique

Combat pratique

Utilisons les événements tactiles pour implémenter une barre de progression coulissante côté mobile

Définissons d'abord le HTML

<p class="progress-wrapper">
    <p class="progress"></p>
    <p class="progress-btn"></p>
</p>

La partie CSS est omise ici

Récupérez l'élément dom et initialisez le point de départ du toucher et la distance du bouton depuis le coin le plus à gauche du conteneur

const progressWrapper = document.querySelector(&#39;.progress-wrapper&#39;)
const progress = document.querySelector(&#39;.progress&#39;)
const progressBtn = document.querySelector(&#39;.progress-btn&#39;)
const progressWrapperWidth = progressWrapper.offsetWidth

let touchPoint = 0
let btnLeft = 0

Écoutez l'événement touchstart

progressBtn.addEventListener(&#39;touchstart&#39;, e => {
    let touch = e.touches[0]
    touchPoint = touch.clientX // 获取触摸的初始位置
 btnLeft = parseInt(getComputedStyle(progressBtn, null)[&#39;left&#39;], 10) // 此处忽略IE浏览器兼容性
})

Écoutez l'événement touchmove

progressBtn.addEventListener(&#39;touchmove&#39;, e => {
e.preventDefault()
    let touch = e.touches[0]

    let diffX = touch.clientX - touchPoint // 通过当前位置与初始位置之差计算改变的距离
    let btnLeftStyle = btnLeft + diffX // 为按钮定义新的left值

    touch.target.style.left = btnLeftStyle + &#39;px&#39;

    progress.style.width = (btnLeftStyle / progressWrapperWidth) * 100 + &#39;%&#39; // 通过按钮的left值与进度条容器长度的比值,计算进度条的长度百分比
})

Grâce à une série d'opérations logiques, notre barre de progression a été essentiellement implémentée, mais un problème a été découvert lorsque la position tactile dépasse le conteneur de la barre de progression, un bug se produit. >

if (btnLeftStyle > progressWrapperWidth) {
    btnLeftStyle = progressWrapperWidth
    } else if (btnLeftStyle < 0) {
    btnLeftStyle = 0
}

À ce stade, une simple barre de défilement mobile a été implémentée

Ce qui précède représente l'intégralité du contenu de cet article, je l'espère. sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez visiter le site Web Follow PHP Chinese !

Recommandations associées :

L'événement tactile HTML5 réalise un glissement de haut en bas de la page de l'écran tactile

Prix du terminal mobile HTML5- animation de défilement transparente gagnante Mettre en œuvre

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!

Déclaration
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
H5 et HTML5: termes couramment utilisés dans le développement WebH5 et HTML5: termes couramment utilisés dans le développement WebApr 13, 2025 am 12:01 AM

H5 et HTML5 se réfèrent à la même chose, à savoir HTML5. HTML5 est la cinquième version de HTML, apportant de nouvelles fonctionnalités telles que les balises sémantiques, la prise en charge multimédia, la toile et les graphiques, le stockage hors ligne et le stockage local, l'amélioration de l'expressivité et de l'interactivité des pages Web.

À quoi se réfère H5? Explorer le contexteÀ quoi se réfère H5? Explorer le contexteApr 12, 2025 am 12:03 AM

H5Referstohtml5, apivotaltechnologyInwebdevelopment.1) html5introducesnewelementsandapisforrich, dynamicwebapplications.2) itsupp OrtsMultimeDiaHithoutPlugins, améliorant la réception detièmeaCrOsDevices.3) SemantelelementsImproveContentsTructureAndSeo.4) H5'sRespo

H5: outils, cadres et meilleures pratiquesH5: outils, cadres et meilleures pratiquesApr 11, 2025 am 12:11 AM

Les outils et les frameworks qui doivent être maîtrisés dans le développement H5 incluent Vue.js, React et WebPack. 1.Vue.js convient à la construction d'interfaces utilisateur et prend en charge le développement des composants. 2. React optimise le rendu de la page via Virtual DOM, adapté aux applications complexes. 3.WebPack est utilisé pour l'emballage des modules et optimiser le chargement des ressources.

L'héritage de HTML5: Comprendre H5 dans le présentL'héritage de HTML5: Comprendre H5 dans le présentApr 10, 2025 am 09:28 AM

Html5hassignifytransformedwebdevelopmentByIntroduCingSémanticElements, améliorant laMultimeSupport, et improvingperformance.1) itmadewebsitesMoreAccessSiblendSeo-friendlywithsemiticslike, et.2)

Code H5: accessibilité et HTML sémantiqueCode H5: accessibilité et HTML sémantiqueApr 09, 2025 am 12:05 AM

H5 améliore l'accessibilité des pages Web et les effets SEO via des éléments sémantiques et des attributs ARIA. 1. Utiliser, etc. pour organiser la structure du contenu et améliorer le référencement. 2. Les attributs ARIA tels que Aria-Babel améliorent l'accessibilité, et les utilisateurs de technologies d'assistance peuvent utiliser en douceur les pages Web.

H5 est-il le même que HTML5?H5 est-il le même que HTML5?Apr 08, 2025 am 12:16 AM

"H5" et "HTML5" sont les mêmes dans la plupart des cas, mais ils peuvent avoir des significations différentes dans certains scénarios spécifiques. 1. "Html5" est une norme définie par W3C qui contient de nouvelles balises et API. 2. "H5" est généralement l'abréviation de HTML5, mais dans le développement mobile, il peut se référer à un cadre basé sur HTML5. Comprendre ces différences aide à utiliser ces termes avec précision dans votre projet.

Quelle est la fonction de H5?Quelle est la fonction de H5?Apr 07, 2025 am 12:10 AM

H5, ou HTML5, est la cinquième version de HTML. Il fournit aux développeurs un ensemble d'outils plus fort, ce qui facilite la création d'applications Web complexes. Les fonctions principales de H5 incluent: 1) des éléments qui permettent de dessiner des graphiques et des animations sur les pages Web; 2) Tags sémantiques tels que, etc. pour rendre la structure de la page Web claire et propice à l'optimisation du référencement; 3) de nouvelles API telles que GeolocationAPI prennent en charge les services basés sur la localisation; 4) La compatibilité entre les navigateurs doit être assurée par le biais de tests de compatibilité et de bibliothèque polyfillaire.

Comment faire le lien H5Comment faire le lien H5Apr 06, 2025 pm 12:39 PM

Comment créer un lien H5? Déterminez la cible de liaison: Obtenez l'URL de la page ou de l'application H5. Créer des ancres HTML: utilisez le & lt; a & gt; Tag pour créer une ancre et spécifiez l'URL cible de liaison. Définir les propriétés du lien (facultatif): définir les propriétés cibles, titres et onclick selon les besoins. Ajouter à la page Web: ajoutez du code d'ancrage HTML à la page Web où vous souhaitez que le lien apparaisse.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

VSCode Windows 64 bits Télécharger

VSCode Windows 64 bits Télécharger

Un éditeur IDE gratuit et puissant lancé par Microsoft

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Puissant environnement de développement intégré PHP

SublimeText3 version anglaise

SublimeText3 version anglaise

Recommandé : version Win, prend en charge les invites de code !

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire