


Exemples pour expliquer l'utilisation de la liaison de fonction JavaScript
Cet article présente principalement l'utilisation de la liaison de fonctions JavaScript et analyse les principes, les méthodes de mise en œuvre et les techniques de fonctionnement associées de la liaison de fonctions JavaScript sous forme d'exemples. J'espère que cela pourra aider tout le monde.
Perface
Si on vous demande d'implémenter cette page et certaines opérations, comme cliquer sur 1 , 2 , 3, etc. sont affichés dans le texte de saisie, et il existe également une fonction de suppression. Nous ne nous en soucions pas lors de la numérotation, c'est juste une simulation. Si je débutais, je ferais ceci :
1. Utilisez CSS et HTML pour présenter l'interface
2. Utilisez la délégation d'événement JavaScript pour surveiller l'événement de clic du parent du bouton. node
Mais que se passe-t-il si je souhaite utiliser la pensée orientée objet ? Je l'ai fait dans Ext, donc je dirais que cela m'a beaucoup aidé à encapsuler. Peut-être que certaines personnes qui n'ont jamais utilisé Ext ne comprennent pas le code que j'ai posté ci-dessous, mais je ferai de mon mieux pour l'expliquer clairement !
Description
ContactTelPanel =Ext.extend(Ext.Panel, { //构造方法 constructor : function(config) { Ext.apply(this, config);//直接把config对象的属性全复制到this对象中 Parent = this.parent; var me = this; ContactTelPanel.superclass.constructor.call(this, {//用ContactTelPanel的父类也就是Ext.Panel的构造函数 autoScroll : true, title : "拨打电话",//设置title,跟这篇文章的主体没关系,不要管他 id : "contacttelpanel", bodyStyle : "padding: 30px 300px;", defaults : {//可以为该对象(ContactTelPanel)包含的组件(也就是在items配置选项)设置一些相同属性 layout : "column", defaults : { xtype : "button", width : 50, height : 25, style : "margin:4px 15px", handler : this.press //为每个按钮都添加一个click的事件 }, bodyBorder : false }, items : [ {//textfield组件 height : 30, width : 250, xtype : "textfield", id : "tf", style : "margin-bottom:10px" }, {// 没有xtype就是默认为panel,下面也是,不然就不要纠结了,直接在这里想象成第一行按钮1、按钮2、按钮3 items : [ { text : "1" }, { text : "2" }, { text : "3" } ] }, {// 这里是按钮4、按钮5、按钮6 items : [ { text : "4" }, { text : "5" }, { text : "6" } ] }, {// 这里是按钮7、按钮8、按钮9 下同 items : [ { text : "7" }, { text : "8" }, { text : "9" } ] }, { items : [ { text : "*" }, { text : "0" }, { text : "#" } ] }, { items : [ { text : "拨打", }, { text : "删除", } ] } ] }); }, press : function() { var text = this.text, textfield = Ext.getDom("tf"); if (/[0-9*#]/.test(text)) {//在textfield中显示所点击按钮的数字 textfield.value += text; } else if (this.text == "删除") {//删除功能 textfield.value = textfield.value.slice(0, -1); } else if (this.text == "拨打") {//这个先不要管他 Tel.telcall(textfield.value); } } });
Remarque : En fait, nous pouvons savoir d'après ce qui précède que ContactTelPanel hérite de Ext.Panel , puis il y a de nombreuses clés dans ce panneau, dont chacune écoute les événements de clic. J'ai vraiment l'impression que je ne suis pas très bon ici. Je devrais utiliser la délégation d'événement pour l'implémenter, car chacun de vos boutons écoute l'événement de clic, ce qui affecte trop l'efficacité. Grâce à la délégation d'événements, nous pouvons simplement écouter l'événement de clic de son nœud parent, puis déterminer l'objet cible et opérer en fonction du flux d'événements. L'objectif de cet article est toujours dans le code handler : this.press
dans l'événement d'écoute. Le problème que j'ai rencontré est le suivant : que se passe-t-il si je dois utiliser certains attributs de cette classe ContactTelPanel dans la fonction de presse ?
Idée
Je pense que je souhaite utiliser les attributs de cette classe dans la fonction presse J'utilise cet objet directement dans la presse. . Comprenez-le, mais j'avais tort. Par exemple, si vous voyez console.dir(this)
dans la fonction Press, ce qui apparaît sur la console Chrome Malheureusement, ce qui apparaît est un objet Button, et son pointeur this a changé ? C'était effectivement un peu gênant, et j'ai alors pensé à trois méthodes, comme suit :
Solution
1 Passer dans chaque fonction qui écoute à l'événement Référez-vous au
code : handler : this.press(this)
, puis écrivez alert(arguments[0])
dans le corps de la fonction presse Que se passe-t-il. : Cette page est effectivement chargée. La fenêtre pop-up est ContactTelPanel, mais elle n'apparaît pas lorsque vous cliquez sur ces boutons
Raison : this.press(this)
, l'analyseur javascript écrit de cette manière. le traitera comme appelant la fonction de presse. Ensuite, lorsque vous chargez la page, exécutez
2 et définissez la variable globale dans cette classe ContactTelPanel
Code : Par exemple, set me = this sur la cinquième ligne, puis dans la fonction presse Écrivez dans le corps alert(me)
Que se passe-t-il : Il est vrai que la fenêtre apparaît lorsque l'on clique sur le bouton , et cela réussit
Inconvénients : pollue la situation globale. Les variables sont facilement falsifiées par d'autres involontairement. Par exemple, lorsque j'introduis le js de cette page et que je fais ensuite référence à d'autres js, je définis var me = "monkindy" dans le js suivant. Ensuite, lorsque vous cliquez sur le bouton de cette page, il apparaîtra 123, ce qui n'est pas un. Objet ContactTelPanel
3 Utilisation simple des fermetures
Code:handler : function(){me.press(me)}
Remarque : moi est l'objet ContactTelPanel, car ce pointeur en fonction est déjà un objet bouton, donc il devrait être en fonction Utilisez-moi (ou un autre nom de variable) pour enregistrer cet objet à l'extérieur, c'est-à-dire var me = this
Que se passe-t-il : C'est bien sûr réussi
4 Utilisez l'appel pour implémenter la fonction Binding
Code : handler : function(){ me.press.call(this,me);}
Pensez personnellement : Cela devrait être le plus utile
Autre : l'article précédent, une explication détaillée de la liaison de fonctions JavaScript, a introduit la technologie de liaison de fonctions basée sur du js pur. Les lecteurs intéressés peuvent comparer les similitudes et les différences entre les deux.
Recommandations associées :
Explication détaillée de la fonction JavaScript connaissances de liaison_basic
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

MetaMask (également appelé Little Fox Wallet en chinois) est un logiciel de portefeuille de cryptage gratuit et bien accueilli. Actuellement, BTCC prend en charge la liaison au portefeuille MetaMask. Après la liaison, vous pouvez utiliser le portefeuille MetaMask pour vous connecter rapidement, stocker de la valeur, acheter des pièces, etc., et vous pouvez également obtenir un bonus d'essai de 20 USDT pour la première liaison. Dans le didacticiel du portefeuille BTCCMetaMask, nous présenterons en détail comment enregistrer et utiliser MetaMask, ainsi que comment lier et utiliser le portefeuille Little Fox dans BTCC. Qu'est-ce que le portefeuille MetaMask ? Avec plus de 30 millions d’utilisateurs, MetaMask Little Fox Wallet est aujourd’hui l’un des portefeuilles de crypto-monnaie les plus populaires. Son utilisation est gratuite et peut être installée sur le réseau en tant qu'extension

À l’ère actuelle d’explosion de l’information, la construction d’une marque personnelle et d’une image d’entreprise est devenue de plus en plus importante. En tant que principale plateforme de partage de vie dans le domaine de la mode en Chine, Xiaohongshu a attiré l'attention et la participation d'un grand nombre d'utilisateurs. Pour les utilisateurs qui souhaitent étendre leur influence et améliorer l’efficacité de la diffusion du contenu, les sous-comptes contraignants sont devenus un moyen efficace. Alors, comment Xiaohongshu lie-t-il un sous-compte ? Comment vérifier si le compte est normal ? Cet article répondra à ces questions pour vous en détail. 1. Comment lier un sous-compte sur Xiaohongshu ? 1. Connectez-vous à votre compte principal : Tout d'abord, vous devez vous connecter à votre compte principal Xiaohongshu. 2. Ouvrez le menu des paramètres : cliquez sur « Moi » dans le coin supérieur droit, puis sélectionnez « Paramètres ». 3. Accédez à la gestion du compte : dans le menu des paramètres, recherchez l'option "Gestion du compte" ou "Assistant de compte" et cliquez sur

1. Ouvrez Toutiao. 2. Cliquez sur Mon dans le coin inférieur droit. 3. Cliquez sur [Paramètres système]. 4. Cliquez sur [Paramètres de compte et de confidentialité]. 5. Cliquez sur le bouton sur le côté droit de [Douyin] pour lier Douyin.

L'application Cainiao est une plate-forme qui peut vous fournir diverses informations logistiques. Les fonctions ici sont très puissantes et faciles à utiliser. Si vous rencontrez des problèmes liés à la logistique, ils peuvent être résolus ici. Quoi qu'il en soit, cela peut vous apporter une solution. -Le service d'arrêt peut tout résoudre à temps. La vérification de la livraison express, la récupération de la livraison express, l'envoi de la livraison express, etc. se font sans aucun problème. Nous avons coopéré avec diverses plateformes et toutes les informations peuvent être interrogées. Il arrivera que les marchandises achetées sur Pinduoduo ne puissent pas afficher les informations logistiques. En fait, vous devez lier manuellement Pinduoduo pour y parvenir. Les méthodes spécifiques ont été triées ci-dessous, et tout le monde peut y jeter un œil. Comment lier Cainiao au compte Pinduoduo : 1. Ouvrez l'application Cainiao et accédez à la page principale.

Savez-vous comment lier Pinduoduo lorsque vous utilisez Cainiao Wrap ? La version officielle de l'application Cainiao Wrap ne synchronise pas automatiquement certaines informations logistiques de Pinduoduo sur cette plateforme. Il vous suffit de copier le numéro de commande ou de vérifier votre téléphone portable pour le voir. s'il y a des informations de livraison express. Bien entendu, tout cela doit être complété manuellement. Si vous souhaitez en savoir plus, venez jeter un œil auprès de l'éditeur. Comment lier l'application Cainiao à Pinduoduo 1. Ouvrez l'application Cainiao et cliquez sur « Guide du package » dans le coin supérieur gauche de la page principale. 2. Dans l'interface, il existe de nombreux sites Web d'achats et les comptes peuvent être liés. 3. Cliquez pour importer d'autres plateformes de commerce électronique. 4. Autorisation de l'utilisateur : cliquez sur Pinduoduo pour accéder à l'interface

Avec le développement rapide de la finance sur Internet, l'investissement en actions est devenu le choix de plus en plus de personnes. Dans le trading d'actions, les graphiques en bougies sont une méthode d'analyse technique couramment utilisée. Ils peuvent montrer l'évolution des cours des actions et aider les investisseurs à prendre des décisions plus précises. Cet article présentera les compétences de développement de PHP et JS, amènera les lecteurs à comprendre comment dessiner des graphiques en bougies boursières et fournira des exemples de code spécifiques. 1. Comprendre les graphiques en bougies boursières Avant de présenter comment dessiner des graphiques en bougies boursières, nous devons d'abord comprendre ce qu'est un graphique en bougies. Les graphiques en chandeliers ont été développés par les Japonais

Le dernier modèle de voiture Mi su7 lancé par Xiaomi a dominé diverses listes de recherche populaires. De nombreux utilisateurs qui ont besoin d'acheter une voiture ont choisi le modèle de voiture Xiaomi su7 pour l'achat. Alors, comment utilisez-vous votre application de voiture Xiaomi pour lier la voiture après la sélection. monter la voiture ? Si vous décidez d'utiliser une borne de recharge domestique pour recharger, ce guide didacticiel vous donnera une introduction détaillée, j'espère qu'il pourra vous aider. Tout d'abord, nous ouvrons l'application mobile Xiaomi, cliquons sur le bouton Mon dans le coin inférieur droit, puis dans l'interface Mon, vous pouvez voir l'option de pile de chargement à domicile. Après avoir entré la page qui lie la pile de chargement, cliquez sur le code de numérisation. ci-dessous et scannez le code QR sur la pile de chargement. Le code QR peut être utilisé pour lier la pile de chargement à l'application.
