Maison interface Web js tutoriel Faites attention aux compétences jquery et améliorez les compétences jquery (doit apprendre pour le développement front-end)_jquery

Faites attention aux compétences jquery et améliorez les compétences jquery (doit apprendre pour le développement front-end)_jquery

May 16, 2016 pm 03:34 PM

Une collection de conseils simples pour vous aider à améliorer vos compétences jQuery.

Un petit projet lancé par Matt Smith, il existe actuellement 14 astuces. Bole Online continuera à assurer le suivi des mises à jour.

Bouton Retour en haut
Précharger les images
Vérifiez si l'image est chargée
Réparez automatiquement les photos endommagées
Changement de classe sur Hover
Désactiver les champs de saisie
Arrêter le chargement du lien
Commutateur fondu/glissière
Effet de pliage simple
Réglez deux Divs à la même hauteur
Ouvrir le lien externe dans une nouvelle fenêtre
Trouvez l'élément de texte
Basculer entre les déclencheurs visibles et cachés

Bouton Retour en haut

En utilisant les méthodes animate et scrollTop dans jQuery, vous pouvez créer une animation simple de retour en haut sans avoir besoin d'un plugin :

JavaScript

// Back to top
$('a.top').click(function (e) {
 e.preventDefault();
 $(document.body).animate({scrollTop: 0}, 800);
});
Copier après la connexion

JavaScript

<!-- Create an anchor tag -->
<a class="top" href="#">Back to top</a>
Copier après la connexion

Modifiez la valeur de scrollTop à l'endroit où vous souhaitez que la barre de défilement s'arrête. Et puis ce que vous faites, c'est le configurer pour qu'il revienne au sommet dans 800 millisecondes.

Précharger les images

Si votre page utilise beaucoup d'images qui ne sont pas visibles initialement (par exemple liées au survol), il est utile de les précharger :

JavaScript

$.preloadImages = function () {
 for (var i = 0; i < arguments.length; i++) {
  $('<img>').attr('src', arguments[i]);
 }
};
$.preloadImages('img/hover-on.png', 'img/hover-off.png');
Copier après la connexion

Vérifiez si l'image est chargée

Parfois, vous devrez peut-être vérifier si l'image est complètement chargée avant de pouvoir effectuer des opérations ultérieures dans le script :

JavaScript

$('img').load(function () {
 console.log('image load successful');
});
Copier après la connexion

Vous pouvez également vérifier si une image spécifique a été chargée en remplaçant la balise img par un identifiant ou une classe.

Réparer automatiquement les images endommagées

Si vous constatez que les liens d'images sur votre site Web sont rompus, il sera difficile de les remplacer un par un. Ce code simple peut beaucoup aider :

JavaScript

$('img').on('error', function () {
 $(this).prop('src', 'img/broken.png');
});
Copier après la connexion

Même si vous n’avez aucun lien rompu, l’ajout de ce code n’aura aucun impact.

Activation de la classe en survol

Si la souris de l'utilisateur survole un élément cliquable de la page, vous souhaitez modifier la représentation visuelle de cet élément. Vous pouvez utiliser le code suivant pour ajouter une classe à l'élément lorsque l'utilisateur le survole ; supprimer la classe lorsque l'utilisateur quitte la souris :

JavaScript

$('.btn').hover(function () {
 $(this).addClass('hover');
}, function () {
 $(this).removeClass('hover');
});
Copier après la connexion

Il vous suffit d'ajouter le CSS nécessaire. Si vous avez besoin d'un moyen plus simple, vous pouvez également utiliser la méthode toggleClass :

JavaScript

$('.btn').hover(function () {
 $(this).toggleClass('hover');
});
Copier après la connexion


Remarque : CSS peut être une solution plus rapide pour cet exemple, mais cela vaut quand même la peine de le savoir.

Désactiver le champ de saisie

Parfois, vous souhaiterez peut-être rendre le bouton d'envoi d'un formulaire ou sa zone de saisie de texte indisponible jusqu'à ce que l'utilisateur effectue une action spécifique (comme confirmer la case à cocher « J'ai lu les conditions »). Ajoutez un attribut désactivé à votre entrée pour obtenir l'effet souhaité :

JavaScript

$('input[type="submit"]').prop('disabled', true);
Copier après la connexion

Lorsque vous souhaitez changer la valeur de désactivé en faux, exécutez simplement à nouveau la méthode prop sur l'entrée.

JavaScript

$('input[type="submit"]').prop('disabled', false);
Copier après la connexion

Arrêter le chargement du lien

Parfois, vous ne voulez pas qu'un lien renvoie vers une page ou recharge la page, mais vous voulez pouvoir faire autre chose, comme déclencher d'autres scripts. Le code suivant est une petite astuce pour désactiver le comportement par défaut :

JavaScript

$('a.no-link').click(function (e) {
 e.preventDefault();
});
Copier après la connexion

Interrupteur fondu/glissier

Les fondus entrants et sortants et les diapositives sont des effets d'animation que nous utilisons souvent jQuery pour créer. Peut-être souhaitez-vous simplement révéler un élément lorsque l'utilisateur clique sur quelque chose, l'utilisation de fadeIn et slideDown est toutes deux excellente. Mais si vous souhaitez que l'élément apparaisse au premier clic et disparaisse au deuxième clic, le code suivant peut bien faire l'affaire :

JavaScript

// Fade
$('.btn').click(function () {
 $('.element').fadeToggle('slow');
});
// Toggle
$('.btn').click(function () {
 $('.element').slideToggle('slow');
});
Copier après la connexion

Effet accordéon simple

Voici un moyen simple et rapide d’obtenir un effet accordéon :

JavaScript

// Close all panels
$('#accordion').find('.content').hide();
 
// Accordion
$('#accordion').find('.accordion-header').click(function () {
 var next = $(this).next();
 next.slideToggle('fast');
 $('.content').not(next).slideUp('fast');
 return false;
});
Copier après la connexion

Après avoir ajouté ce script, tout ce que vous avez à faire est de voir si le script fonctionne correctement dans le HTML nécessaire.

Faire en sorte que les deux Divs aient la même hauteur

Parfois, vous souhaiterez peut-être que deux divs aient la même hauteur, quel que soit le contenu qu'ils contiennent :

JavaScript

$('.div').css('min-height', $('.main-div').height());
Copier après la connexion

Cet exemple définit la hauteur minimale, ce qui signifie qu'elle peut être plus grande que le div principal, mais jamais plus petite. Mais une méthode plus flexible consiste à parcourir les paramètres d'un ensemble d'éléments et à définir la hauteur sur la valeur la plus élevée de l'élément :

JavaScript

var $columns = $('.column');
var height = 0;
$columns.each(function () {
 if ($(this).height() > height) {
  height = $(this).height();
 }
});
$columns.height(height);
Copier après la connexion

Si vous souhaitez que toutes les colonnes aient la même hauteur :

JavaScript

var $rows = $('.same-height-columns');
$rows.each(function () {
 $(this).find('.column').height($(this).height());
});
Copier après la connexion

在新标签/窗口打开站外链接
在一个新标签或者新窗口中打开外置链接,并确保站内链接会在相同的标签或窗口中打开:

JavaScript

$('a[href^="http"]').attr('target', '_blank');
$('a[href^="//"]').attr('target', '_blank');
$('a[href^="' + window.location.origin + '"]').attr('target', '_self');
Copier après la connexion

注意:window.location.origin 在 IE 10 中不可用,该 issue 的修复方法。

通过文本找到元素

通过使用 jQuery 中的 contains() 选择器,你可以找到某个元素中的文本。如果文本不存在,该元素将会隐藏:

JavaScript

var search = $('#search').val();

$('div:not(:contains("' + search + '"))').hide();
Copier après la connexion

视觉改变触发
当用户焦点在另外一个标签上,或重新回到标签时,触发 JavaScript:

JavaScript

$(document).on('visibilitychange', function (e) {
 if (e.target.visibilityState === "visible") {
  console.log('Tab is now in view!');
 } else if (e.target.visibilityState === "hidden") {
  console.log('Tab is now hidden!');
 }
});
Copier après la connexion

Ajax 调用的错误处理

当某次 Ajax 调用返回 404 或 500 错误,就会执行错误处理。但如果没有定义该处理,其他 jQuery 代码或许会停止工作。可以通过下面这段代码定义一个全局 Ajax 错误处理:

JavaScript

$(document).ajaxError(function (e, xhr, settings, error) {
 console.log(error);
});
Copier après la connexion

全能程序员交流QQ群290551701,群内程序员都是来自,百度、阿里、京东、小米、去哪儿、饿了吗、蓝港等高级程序员 ,拥有丰富的经验。加入我们,直线沟通技术大牛,最佳的学习环境,了解业内的一手的资讯。如果你想结实大牛,那 就加入进来,让大牛带你超神!

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)

Que dois-je faire si je rencontre l'impression de code brouillé pour les reçus en papier thermique frontal? Que dois-je faire si je rencontre l'impression de code brouillé pour les reçus en papier thermique frontal? Apr 04, 2025 pm 02:42 PM

Des questions et des solutions fréquemment posées pour l'impression de billets thermiques frontaux pour le développement frontal, l'impression de billets est une exigence commune. Cependant, de nombreux développeurs mettent en œuvre ...

Qui est payé plus de python ou de javascript? Qui est payé plus de python ou de javascript? Apr 04, 2025 am 12:09 AM

Il n'y a pas de salaire absolu pour les développeurs Python et JavaScript, selon les compétences et les besoins de l'industrie. 1. Python peut être davantage payé en science des données et en apprentissage automatique. 2. JavaScript a une grande demande dans le développement frontal et complet, et son salaire est également considérable. 3. Les facteurs d'influence comprennent l'expérience, la localisation géographique, la taille de l'entreprise et les compétences spécifiques.

Démystifier javascript: ce qu'il fait et pourquoi c'est important Démystifier javascript: ce qu'il fait et pourquoi c'est important Apr 09, 2025 am 12:07 AM

JavaScript est la pierre angulaire du développement Web moderne, et ses principales fonctions incluent la programmation axée sur les événements, la génération de contenu dynamique et la programmation asynchrone. 1) La programmation axée sur les événements permet aux pages Web de changer dynamiquement en fonction des opérations utilisateur. 2) La génération de contenu dynamique permet d'ajuster le contenu de la page en fonction des conditions. 3) La programmation asynchrone garantit que l'interface utilisateur n'est pas bloquée. JavaScript est largement utilisé dans l'interaction Web, les applications à une page et le développement côté serveur, améliorant considérablement la flexibilité de l'expérience utilisateur et du développement multiplateforme.

Comment fusionner les éléments du tableau avec le même ID dans un seul objet en utilisant JavaScript? Comment fusionner les éléments du tableau avec le même ID dans un seul objet en utilisant JavaScript? Apr 04, 2025 pm 05:09 PM

Comment fusionner les éléments du tableau avec le même ID dans un seul objet en JavaScript? Lors du traitement des données, nous rencontrons souvent la nécessité d'avoir le même ID ...

Comment réaliser des effets de défilement de parallaxe et d'animation des éléments, comme le site officiel de Shiseido?
ou:
Comment pouvons-nous réaliser l'effet d'animation accompagné d'un défilement de page comme le site officiel de Shiseido? Comment réaliser des effets de défilement de parallaxe et d'animation des éléments, comme le site officiel de Shiseido? ou: Comment pouvons-nous réaliser l'effet d'animation accompagné d'un défilement de page comme le site officiel de Shiseido? Apr 04, 2025 pm 05:36 PM

La discussion sur la réalisation des effets de défilement de parallaxe et d'animation des éléments dans cet article explorera comment réaliser le site officiel de Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ...

La différence dans Console.Log de sortie Résultat: Pourquoi les deux appels sont-ils différents? La différence dans Console.Log de sortie Résultat: Pourquoi les deux appels sont-ils différents? Apr 04, 2025 pm 05:12 PM

Discussion approfondie des causes profondes de la différence de sortie Console.log. Cet article analysera les différences dans les résultats de sortie de la fonction Console.log dans un morceau de code et expliquera les raisons derrière. � ...

JavaScript est-il difficile à apprendre? JavaScript est-il difficile à apprendre? Apr 03, 2025 am 12:20 AM

Apprendre JavaScript n'est pas difficile, mais c'est difficile. 1) Comprendre les concepts de base tels que les variables, les types de données, les fonctions, etc. 2) Master la programmation asynchrone et les implémenter via des boucles d'événements. 3) Utilisez les opérations DOM et promettez de gérer les demandes asynchrones. 4) Évitez les erreurs courantes et utilisez des techniques de débogage. 5) Optimiser les performances et suivre les meilleures pratiques.

Comment implémenter la fonction de glisser-déposer et de régler la fonction de réglage similaire à VScode dans le développement frontal? Comment implémenter la fonction de glisser-déposer et de régler la fonction de réglage similaire à VScode dans le développement frontal? Apr 04, 2025 pm 02:06 PM

Explorez la mise en œuvre de la fonction de glisser et de réglage du panneau de type VScode dans le frontal. Dans le développement frontal, comment implémenter un VScode comme ...

See all articles