Table des matières
Écrit avant
1. Analyse de base
1.1 Structure HTML de base
1.2 Initialisation du DOM
1.3 Événements d'initialisation
2. Résumé
Maison interface Web js tutoriel Comment implémenter Picke dans les effets mobiles

Comment implémenter Picke dans les effets mobiles

Oct 12, 2017 am 09:41 AM
实现 方法

Écrit avant

Suite aux recherches précédentes sur les effets mobiles, examinons cette fois le principe de mise en œuvre du Comment implémenter Picke dans les effets mobilessélecteur

Swiper pour les effets mobiles

Voir le code ici : github

Comment implémenter Picke dans les effets mobiles

1. Analyse de base

1.1 Structure HTML de base


<!--     说明:    
1. 类 Comment implémenter Picke dans les effets mobiles-3d 是为了提供3d视角,如果不需要可以去掉    
2. 类 Comment implémenter Picke dans les effets mobiles-slot-absolute 在3d视角中需要加上,因为下面相对定位的 Comment implémenter Picke dans les effets mobiles-items 是要相对父容器进行    transform的,如果不加,就会造成位移不正确    3. DOM中所有的style样式都是在初始化的时候加上的--><p class="Comment implémenter Picke dans les effets mobiles Comment implémenter Picke dans les effets mobiles-3d">
    <p class="Comment implémenter Picke dans les effets mobiles-items">
        <p class="Comment implémenter Picke dans les effets mobiles-slot Comment implémenter Picke dans les effets mobiles-slot-absolute" style="flex:1;">
            <p class="Comment implémenter Picke dans les effets mobiles-slot-wrapper" id="wrapper" style="height: 108px;">
                <p class="Comment implémenter Picke dans les effets mobiles-item Comment implémenter Picke dans les effets mobiles-selected" style="height:36px;line-height: 36px">1981</p>
                <!-- ... -->
                <p class="Comment implémenter Picke dans les effets mobiles-item" style="height:36px;line-height: 36px">1999</p>
            </p>
        </p>
    </p>
    <p class="Comment implémenter Picke dans les effets mobiles-center-highlight" style="height:36px;margin-top:-18px;"></p></p>
Copier après la connexion

1.2 Initialisation du DOM

Puisque le Comment implémenter Picke dans les effets mobiles dans le code source d'Ele.me est généré à l'aide de l'v-for instructionDOM, j'utilise donc simplement javascript pour le simuler iciDOM de génération.


var el = document.querySelector(&#39;#wrapper&#39;);
var animationFrameId = null;
var currentValue;
var itemHeight = 36;
var visibleItemCount = 3;
var valueIndex = 0;
var rotateEffect = true;
var datas = [&#39;1981&#39;, &#39;1982&#39;, &#39;1983&#39;, &#39;...&#39;, &#39;1999&#39;];// 如果支持3d视角,则给<p class="Comment implémenter Picke dans les effets mobiles"></p>加上类"Comment implémenter Picke dans les effets mobiles-3d"// <p class="Comment implémenter Picke dans les effets mobiles-slot" style="flex:1;">加上类"Comment implémenter Picke dans les effets mobiles-slot-absolute"if (rotateEffect) {
    var Comment implémenter Picke dans les effets mobiles = document.querySelector(&#39;.Comment implémenter Picke dans les effets mobiles&#39;);
    var Comment implémenter Picke dans les effets mobilesSlot = document.querySelector(&#39;.Comment implémenter Picke dans les effets mobiles-slot&#39;);
    Comment implémenter Picke dans les effets mobiles.classList.add(&#39;Comment implémenter Picke dans les effets mobiles-3d&#39;);
    Comment implémenter Picke dans les effets mobilesSlot.classList.add(&#39;Comment implémenter Picke dans les effets mobiles-slot-absolute&#39;);}// 限定容器高度el.style.height = `${visibleItemCount * itemHeight}px`;// 生成DOMvar html = &#39;&#39;;datas.forEach(function(data, index) {
    html += `<p class="Comment implémenter Picke dans les effets mobiles-item" style="height:36px;line-height:36px;">${data}</p>`;});el.innerHTML = html;// 激活当前itemvar Comment implémenter Picke dans les effets mobilesItems = document.querySelectorAll(&#39;.Comment implémenter Picke dans les effets mobiles-item&#39;);Comment implémenter Picke dans les effets mobilesItems[valueIndex].classList.add(&#39;Comment implémenter Picke dans les effets mobiles-selected&#39;);
Copier après la connexion

1.3 Événements d'initialisation

De manière générale, les événements de Comment implémenter Picke dans les effets mobiles incluent également le début, le glissement et la fin du glissement. Puisqu’il s’agit après tout d’un appareil mobile, le glissement est inévitable. Cette fois, l'événement de glissement est encapsulé dans le code source, compatible avec la fin PC, et élimine l'impact du glisser et de la sélection. Regardons de plus près l'analyse. `


/**  * draggable.js  * 只是起到一定的兼容性 * 实质和直接调用 el.addEventListener(&#39;touchstart&#39;, startFn); 并没有多大差别 */// 滑动开始// touchstart 和 mousedown 可见对PC端的兼容// onselectstart/ondragstart 直接return 可见排除了拖动和选择element.addEventListener(supportTouch ? &#39;touchstart&#39; : &#39;mousedown&#39;, function(event) {
    if (isDragging) return;
    document.onselectstart = function() { return false; };
    document.ondragstart = function() { return false; };

    // ...});// 滑动结束var endFn = function(event) {
    // 注销事件
    if (!supportTouch) {
        document.removeEventListener(&#39;mousemove&#39;, moveFn);
        document.removeEventListener(&#39;mouseup&#39;, endFn);
    }
    document.onselectstart = null;
    document.ondragstart = null;

    isDragging = false;

    if (options.end) {
        options.end(supportTouch ? event.changedTouches[0] || event.touches[0] : event);
    }}
Copier après la connexion

Si DOM suit votre glissement sur l'écran du téléphone, la méthode est similaire. Il ne s'agit que d'enregistrer la position de départ lorsque vous commencez à glisser, et le calculant en temps réel pendant le déplacement, une fois le glissement terminé, DOM glissera vers la position où il devrait glisser. Pour ce point, veuillez vous référer à l'article précédent Swiper pour les effets mobiles. Cet article a la même méthode. Ici on se concentre sur les différences


// 滑动开始的执行事件方法start: function(event) {
    dragState = {
        range: getDragRange(),
        // ...
        startTranslateTop: translateUtil.getElementTranslate(el).top
    };}
Copier après la connexion

Il existe deux méthodes, la première getDragRange et la seconde getElementTranslate(el).

  • La première fonction est d'obtenir le déplacement minimum et maximum que Comment implémenter Picke dans les effets mobiles peut glisser, qui sera utilisé lors de l'événement de fin de glissement. Concernant la façon de calculer, voici une brève mention : en glissant vers le bas, le maximum ne peut pas dépasser le haut du milieu item, c'est pourquoi itemHeight * Math.floor(visibleItemCount / 2), tandis qu'en glissant vers le haut, le maximum ne peut pas dépasser le bas du milieu item 🎜>, -itemHeight * (valuesLength - Math.ceil(visibleItemCount / 2)), réfléchissez-y bien.

  • La deuxième fonction est d'obtenir la Comment implémenter Picke dans les effets mobiles valeur du courant transform comme base du prochain calcul glissant. En fait, cela semble assez gênant, car la valeur touchend sera définitivement calculée dans translate à la fin. Nous n'avons besoin que de sauvegarder la dernière valeur de mouvement coulissant à chaque fois, au lieu de la récupérer dans DOM. à chaque fois.


/** * translateUtil * 对浏览器对前缀支持的一些判断 * 检测浏览器对3d属性的支持情况 * 获取当前的translate值/清空Comment implémenter Picke dans les effets mobiles的translate值/移动Comment implémenter Picke dans les effets mobiles * 对于浏览器的检测方面,这也算是一个比较好的工具类 */var docStyle = document.documentElement.style;var engine;var translate3d = false;// 浏览器判断if (window.opera && Object.prototype.toString.call(opera) === &#39;[object Opera]&#39;) {
    engine = &#39;presto&#39;;} else if (&#39;MozAppearance&#39; in docStyle) {
    engine = &#39;gecko&#39;;} else if (&#39;WebkitAppearance&#39; in docStyle) {
    engine = &#39;webkit&#39;;} else if (typeof navigator.cpuClass === &#39;string&#39;) {
    engine = &#39;trident&#39;;}// css前缀var cssPrefix = {
    trident: &#39;-ms-&#39;,        // IE
    gecko: &#39;-moz-&#39;,         // FireFox
    webkit: &#39;-webkit-&#39;,     // Chrome/Safari/etc...
    presto: &#39;-o-&#39;           // Opera}[engine];// style前缀var vendorPrefix = {
    trident: &#39;ms&#39;,
    gecko: &#39;Moz&#39;,
    webkit: &#39;Webkit&#39;,
    presto: &#39;O&#39;}[engine];var helpElem = document.createElement(&#39;p&#39;);var perspectiveProperty = vendorPrefix + &#39;Perspective&#39;;var transformProperty = vendorPrefix + &#39;Transform&#39;;var transformStyleName = cssPrefix + &#39;transform&#39;;var transitionProperty = vendorPrefix + &#39;Transition&#39;;var transitionStyleName = cssPrefix + &#39;transition&#39;;var transitionEndProperty = vendorPrefix.toLowerCase() + &#39;TransitionEnd&#39;;if (helpElem.style[perspectiveProperty] !== undefined) {
    translate3d = true;}// 讲一下这个正则// \s*(-?\d+(\.\d+?)?)px 这是一个单元,匹配这样的 -23.15px, 剩下的应该就好理解了var regexp = /translate\(\s*(-?\d+(\.\d+?)?)px,\s*(-?\d+(\.\d+?)?)px\)\s*translateZ\(0px\)/ig;
Copier après la connexion

Regardez ensuite le coulissant


drag: function(event) {
    // 加上 dragging 类是为了清除过渡效果,在swiper中也有同样的应用
    el.classList.add(&#39;dragging&#39;);

    dragState.left = event.pageX;
    dragState.top = event.pageY;

    var deltaY = dragState.top - dragState.startTop;
  
    // 计算当前的滑动位移
    var translate = dragState.startTranslateTop + deltaY;

    // 滑动元素
    translateUtil.translateElement(el, null, translate);
    velocityTranslate = translate - prevTranslate || translate;

    prevTranslate = translate;

    if (rotateEffect) {
        updateRotate(prevTranslate, Comment implémenter Picke dans les effets mobilesItems);
    }}
Copier après la connexion

Voir Il y a See More a velocityTranslate dans le code ci-dessus. Cette valeur a un effet magique. Je ne la connaissais pas au début, j'ai découvert plus tard qu'elle était utilisée une fois le glissement terminé, puis j'ai réalisé qu'elle représentait une valeur de déplacement. d'un taux. Qu’est-ce que la vitesse ? Tout comme lorsque vous glissez rapidement, vous espérez toujours qu'il puisse glisser avec inertie. Cette valeur multipliée par une valeur d'inertie peut obtenir un déplacement inertiel. Regardez le code dans end.


end: function() {
    // 添加过渡
    el.classList.remove(&#39;dragging&#39;);
    // 惯性值
    var momentumRatio = 7;
    var currentTranslate = translateUtil.getElementTranslate(el).top;
    var duration = new Date() - dragState.start;

    var momentumTranslate;
    if (duration < 300) {
        momentumTranslate = currentTranslate + velocityTranslate * momentumRatio;
    }

    // 加上惯性速率之后的位移值
    console.log(&#39;momentumTranslate&#39;, momentumTranslate);

    dragRange = dragState.range;

    setTimeout(function() {
        var translate;
        if (momentumTranslate) {
            translate = Math.round(momentumTranslate / itemHeight) * itemHeight;
        } else {
            translate = Math.round(currentTranslate / itemHeight) * itemHeight;
        }

        // 取得最终的位移值,
        // 必须为itemHeight的倍数
        // 在范围的最大值和最小值中取
        translate = Math.max(Math.min(translate, dragRange[1]), dragRange[0]);
        translateUtil.translateElement(el, null, translate);

        // 计算得出当前位移下应该对应的实际值
        currentValue = translate2Value(translate);

        // 3d效果
        if (rotateEffect) {
            planUpdateRotate();
        }
    }, 10);

    dragState = {};}
Copier après la connexion

Il s'agit du processus de mise en œuvre de l'ensemble du Comment implémenter Picke dans les effets mobiles, vous pouvez l'utiliser sans l'effet 3d. Voyons comment obtenir l'effet 3D. Il y a une initialisation initiale dans doOnValuesChange.


[].forEach.call(items, function(item, index) {
    translateUtil.translateElement(item, null, itemHeight * index);});
Copier après la connexion

définit une valeur de déplacement basée sur l'indice pour chaque item A ce moment, le positionnement de chaque item doit être celui de absolute. , pour qu'ils soient côte à côte après le déplacement, sinon il peut y avoir un espace itemHeight au milieu.

3DLe point le plus critique de l'effet est de savoir comment calculer l'angle de retournement. Un objet constant est défini dans le code source :


var VISIBEL_ITEMS_ANGLE_MAP = {
    3: -45,
    5: -20,
    7: -15};
Copier après la connexion

Vous pouvez voir que lorsqu'il n'y a que 3 éléments visibles, la partie en surbrillance est parallèle au X axe , le item précédent doit être tourné de 45 degrés dans le sens des aiguilles d'une montre autour de l'axe X, et le item suivant doit être tourné de 45 degrés dans le sens inverse des aiguilles d'une montre autour de l'axe X. De plus, il y a une section de code qui est particulièrement alambiquée D'après ma compréhension, elle est la suivante :


// 当前item相对于顶部原本应该有的位移值var itemOffsetTop = index * itemHeight; // 滑动过程中,相对于最开始的位置滑动的位移值var translateOffset = dragRange[1] - currentTranslate;// 当应该有的位移值和滑动的位移值相等的时候,也就说明了当前的`item`被选中// 也就是说此时当前的角度为0var itemOffset = itemOffsetTop - translateOffset;var percentage = itemOffset / itemHeight;var angle = angleUnit * percentage;if (angle > 180) angle = 180;if (angle < -180) angle = -180;rotateElement(item, angle);
Copier après la connexion

Si vous pensez que c'est trop alambiqué, il n'est en fait pas nécessaire de suivre son approche. Allez, il nous suffit de trouver un moyen de déterminer si chaque item est dans la position précédente ou suivante par rapport au item actuellement sélectionné, et nous pouvons calculer l'angle en fonction. à ce sujet.

2. Résumé

J'ai vu tellement de choses sur le composant Comment implémenter Picke dans les effets mobiles dans Ele.me Dans l'ensemble, il est très similaire au glissement dans swiper. la fin. Calculez la valeur de déplacement et faites-la glisser vers la bonne position en fonction de la valeur de déplacement, en fait, l'implémentation de tout le monde peut être similaire, et il n'est pas nécessaire de suivre le code source. ajoutez votre propre compréhension de manière appropriée, alors peut-être que l'écriture de code devient plus confortable. Ceci est juste une petite compréhension personnelle, j'espère que cela pourra m'aider, ainsi qu'à tout le monde.

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 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

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment écrire un roman dans l'application Tomato Free Novel Partagez le tutoriel sur la façon d'écrire un roman dans l'application Tomato Novel Comment écrire un roman dans l'application Tomato Free Novel Partagez le tutoriel sur la façon d'écrire un roman dans l'application Tomato Novel Mar 28, 2024 pm 12:50 PM

Tomato Novel est un logiciel de lecture de romans très populaire. Nous avons souvent de nouveaux romans et bandes dessinées à lire dans Tomato Novel. De nombreux amis souhaitent également gagner de l'argent de poche et éditer le contenu de leur roman. Je veux écrire dans du texte. Alors, comment pouvons-nous y écrire le roman ? Mes amis ne le savent pas, alors allons ensemble sur ce site. Prenons le temps de regarder une introduction à la façon d'écrire un roman. Partagez le didacticiel du roman Tomato sur la façon d'écrire un roman. 1. Ouvrez d'abord l'application de roman gratuite Tomato sur votre téléphone mobile et cliquez sur Personal Center - Writer Center 2. Accédez à la page Tomato Writer Assistant - cliquez sur Créer un nouveau livre. à la fin du roman.

Comment entrer dans le bios sur la carte mère Colorful ? Apprenez-vous deux méthodes Comment entrer dans le bios sur la carte mère Colorful ? Apprenez-vous deux méthodes Mar 13, 2024 pm 06:01 PM

Les cartes mères colorées jouissent d'une grande popularité et d'une part de marché élevée sur le marché intérieur chinois, mais certains utilisateurs de cartes mères colorées ne savent toujours pas comment accéder au BIOS pour les paramètres ? En réponse à cette situation, l'éditeur vous a spécialement proposé deux méthodes pour accéder au bios coloré de la carte mère. Venez l'essayer ! Méthode 1 : utilisez la touche de raccourci de démarrage du disque U pour accéder directement au système d'installation du disque U. La touche de raccourci de la carte mère Colorful pour démarrer le disque U en un seul clic est ESC ou F11. Tout d'abord, utilisez Black Shark Installation Master pour créer un Black. Disque de démarrage Shark U, puis allumez l'ordinateur lorsque vous voyez l'écran de démarrage, appuyez continuellement sur la touche ESC ou F11 du clavier pour accéder à une fenêtre de sélection de la séquence d'éléments de démarrage. Déplacez le curseur à l'endroit où "USB. " s'affiche, puis

Comment récupérer des contacts supprimés sur WeChat (un tutoriel simple vous explique comment récupérer des contacts supprimés) Comment récupérer des contacts supprimés sur WeChat (un tutoriel simple vous explique comment récupérer des contacts supprimés) May 01, 2024 pm 12:01 PM

Malheureusement, les gens suppriment souvent certains contacts accidentellement pour certaines raisons. WeChat est un logiciel social largement utilisé. Pour aider les utilisateurs à résoudre ce problème, cet article explique comment récupérer les contacts supprimés de manière simple. 1. Comprendre le mécanisme de suppression des contacts WeChat. Cela nous offre la possibilité de récupérer les contacts supprimés. Le mécanisme de suppression des contacts dans WeChat les supprime du carnet d'adresses, mais ne les supprime pas complètement. 2. Utilisez la fonction intégrée « Récupération du carnet de contacts » de WeChat. WeChat fournit une « Récupération du carnet de contacts » pour économiser du temps et de l'énergie. Les utilisateurs peuvent récupérer rapidement les contacts précédemment supprimés grâce à cette fonction. 3. Accédez à la page des paramètres WeChat et cliquez sur le coin inférieur droit, ouvrez l'application WeChat « Moi » et cliquez sur l'icône des paramètres dans le coin supérieur droit pour accéder à la page des paramètres.

Comment définir la taille de la police sur le téléphone mobile (ajustez facilement la taille de la police sur le téléphone mobile) Comment définir la taille de la police sur le téléphone mobile (ajustez facilement la taille de la police sur le téléphone mobile) May 07, 2024 pm 03:34 PM

La définition de la taille de la police est devenue une exigence de personnalisation importante à mesure que les téléphones mobiles deviennent un outil important dans la vie quotidienne des gens. Afin de répondre aux besoins des différents utilisateurs, cet article présentera comment améliorer l'expérience d'utilisation du téléphone mobile et ajuster la taille de la police du téléphone mobile grâce à des opérations simples. Pourquoi avez-vous besoin d'ajuster la taille de la police de votre téléphone mobile - L'ajustement de la taille de la police peut rendre le texte plus clair et plus facile à lire - Adapté aux besoins de lecture des utilisateurs d'âges différents - Pratique pour les utilisateurs malvoyants qui souhaitent utiliser la taille de la police fonction de configuration du système de téléphonie mobile - Comment accéder à l'interface des paramètres du système - Dans Rechercher et entrez l'option "Affichage" dans l'interface des paramètres - recherchez l'option "Taille de la police" et ajustez-la. application - téléchargez et installez une application prenant en charge l'ajustement de la taille de la police - ouvrez l'application et entrez dans l'interface des paramètres appropriée - en fonction de l'individu

Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Mar 24, 2024 am 11:27 AM

Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Avec l’essor des réseaux sociaux, WeChat est devenu l’un des outils de communication indispensables dans la vie quotidienne des gens. Cependant, de nombreuses personnes peuvent rencontrer un problème : se connecter à plusieurs comptes WeChat en même temps sur le même téléphone mobile. Pour les utilisateurs de téléphones mobiles Huawei, il n'est pas difficile d'obtenir une double connexion WeChat. Cet article explique comment obtenir une double connexion WeChat sur les téléphones mobiles Huawei. Tout d'abord, le système EMUI fourni avec les téléphones mobiles Huawei offre une fonction très pratique : l'ouverture d'une double application. Grâce à la fonction de double ouverture de l'application, les utilisateurs peuvent simultanément

Le secret de l'éclosion des œufs de dragon mobiles est révélé (étape par étape pour vous apprendre à réussir l'éclosion des œufs de dragon mobiles) Le secret de l'éclosion des œufs de dragon mobiles est révélé (étape par étape pour vous apprendre à réussir l'éclosion des œufs de dragon mobiles) May 04, 2024 pm 06:01 PM

Les jeux mobiles font désormais partie intégrante de la vie des gens avec le développement de la technologie. Il a attiré l'attention de nombreux joueurs avec sa jolie image d'œuf de dragon et son processus d'éclosion intéressant, et l'un des jeux qui a beaucoup attiré l'attention est la version mobile de Dragon Egg. Pour aider les joueurs à mieux cultiver et faire grandir leurs propres dragons dans le jeu, cet article vous présentera comment faire éclore des œufs de dragon dans la version mobile. 1. Choisissez le type d'œuf de dragon approprié. Les joueurs doivent choisir soigneusement le type d'œuf de dragon qu'ils aiment et qui leur conviennent, en fonction des différents types d'attributs et de capacités d'œuf de dragon fournis dans le jeu. 2. Améliorez le niveau de la machine d'incubation. Les joueurs doivent améliorer le niveau de la machine d'incubation en accomplissant des tâches et en collectant des accessoires. Le niveau de la machine d'incubation détermine la vitesse d'éclosion et le taux de réussite de l'éclosion. 3. Collectez les ressources nécessaires à l'éclosion. Les joueurs doivent être dans le jeu.

Maîtrisez rapidement : comment ouvrir deux comptes WeChat sur les téléphones mobiles Huawei révélé ! Maîtrisez rapidement : comment ouvrir deux comptes WeChat sur les téléphones mobiles Huawei révélé ! Mar 23, 2024 am 10:42 AM

Dans la société actuelle, les téléphones portables sont devenus un élément indispensable de nos vies. En tant qu'outil important pour notre communication, notre travail et notre vie quotidienne, WeChat est souvent utilisé. Cependant, il peut être nécessaire de séparer deux comptes WeChat lors du traitement de différentes transactions, ce qui nécessite que le téléphone mobile prenne en charge la connexion à deux comptes WeChat en même temps. En tant que marque nationale bien connue, les téléphones mobiles Huawei sont utilisés par de nombreuses personnes. Alors, quelle est la méthode pour ouvrir deux comptes WeChat sur les téléphones mobiles Huawei ? Dévoilons le secret de cette méthode. Tout d'abord, vous devez utiliser deux comptes WeChat en même temps sur votre téléphone mobile Huawei. Le moyen le plus simple est de le faire.

Guide de programmation PHP : méthodes pour implémenter la séquence de Fibonacci Guide de programmation PHP : méthodes pour implémenter la séquence de Fibonacci Mar 20, 2024 pm 04:54 PM

Le langage de programmation PHP est un outil puissant pour le développement Web, capable de prendre en charge une variété de logiques et d'algorithmes de programmation différents. Parmi eux, l’implémentation de la séquence de Fibonacci est un problème de programmation courant et classique. Dans cet article, nous présenterons comment utiliser le langage de programmation PHP pour implémenter la séquence de Fibonacci et joindrons des exemples de code spécifiques. La suite de Fibonacci est une suite mathématique définie comme suit : le premier et le deuxième élément de la suite valent 1, et à partir du troisième élément, la valeur de chaque élément est égale à la somme des deux éléments précédents. Les premiers éléments de la séquence

See all articles