Maison > interface Web > js tutoriel > Comment basculer entre les fonctions en cliquant sur jQuery ?

Comment basculer entre les fonctions en cliquant sur jQuery ?

Barbara Streisand
Libérer: 2024-11-09 08:38:02
original
534 Les gens l'ont consulté

How to Switch Between Functions on Click Using jQuery?

Basculer entre les fonctions lors d'un clic avec jQuery

Dans jQuery, la tâche d'alterner entre les fonctions lorsqu'un élément est cliqué peut être accomplie avec différents approches.

JQuery intégré .toggle()

jQuery fournit deux versions de la méthode .toggle(). Celui mentionné dans la question, qui est utilisé pour basculer la visibilité, est désormais obsolète. Cependant, il existe une version alternative conçue spécifiquement pour basculer entre les fonctions en cas de clic.

$(selector).toggle(function1, function2);
Copier après la connexion

Cette méthode accepte deux fonctions comme arguments et alterne entre elles à chaque clic.

Plugin personnalisé

Comme alternative, il est possible de créer un plugin personnalisé qui offre une implémentation plus polyvalente. Ce plugin, appelé "clickToggle", permet d'attribuer plusieurs fonctions et peut être utilisé pour n'importe quel événement.

$.fn.clickToggle = function(func1, func2, ...) {
    var funcs = [func1, func2, ...];
    this.data('toggleclicked', 0);
    this.click(function() {
        var data = $(this).data();
        var tc = data.toggleclicked;
        $.proxy(funcs[tc], this)();
        data.toggleclicked = (tc + 1) % funcs.length;
    });
    return this;
};
Copier après la connexion

Pour utiliser ce plugin, spécifiez les fonctions en arguments :

$('#element').clickToggle(function1, function2);
Copier après la connexion

Mise en œuvre améliorée

Le code fourni peut être encore optimisé pour une meilleure performances :

$(function() {
    var clickCallbacks = [function1, function2];
    $('#element').click(function() {
        clickCallbacks[$(this).data('toggleclicked')++]();
    });
});
Copier après la connexion

Cette approche réduit considérablement le nombre d'appels de fonction en attribuant le gestionnaire de clics une seule fois, ce qui entraîne des temps d'exécution plus rapides.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal