Maison  >  Article  >  interface Web  >  La différence entre l'utilisation de JavaScript dans le href et le clic d'une balise

La différence entre l'utilisation de JavaScript dans le href et le clic d'une balise

黄舟
黄舟original
2017-07-27 13:44:381573parcourir

La différence entre utiliser javascript dans le href et onclick d'une balise


⒈ L'événement onclick du lien est exécuté en premier, suivi de l'action sous l'attribut href (saut de page, ou javascript pseudo-lien) ;

⒉ Supposons qu'il y ait à la fois href et onclick dans le lien. Si vous souhaitez que l'action sous l'attribut href ne soit pas exécutée, onclick doit obtenir une fausse valeur de retour

⒊ Si la page est trop longue et qu'il y a une barre de défilement, et que vous souhaitez effectuer une action via l'événement onclick du lien. Son attribut href doit être défini sur javascript:void(0); au lieu de #, ce qui peut empêcher les sauts de page inutiles

⒋ Si vous appelez une valeur de retour dans l'attribut href de la fonction de lien, le contenu de la page actuelle sera remplacée par la valeur de retour de cette fonction

⒌ sera différente en maintenant la touche Shift enfoncée.

⒍ ParentNode n'est pas accessible sous la forme de href dans IE6.0. Essayez de ne pas utiliser javascript: protocol comme attribut href de A. Cela entraînera non seulement le déclenchement inutile de l'événement window.onbeforeunload, mais empêchera également la lecture de l'image animée GIF dans IE. C'est tout, j'ai passé beaucoup de temps là-dessus.

(sous IE6)

<a href="javascript:void(0);" onclick="javascript:modifypassword();"><img src="images/blue/Modify.gif"/></a>
Cette façon d'écrire l'URL sous IE6 sollicite le backend, mais il n'y a aucun mouvement dans le frontend La manière correcte d'écrire

devrait être

Quelques exemples de ma collection personnelle pour que tout le monde puisse s'en inspirer :
<a href="javascript:void(0);" onclick="javascript:modifypassword();return false;"><img src="images/blue/Modify.gif"/></a>


------------- -------- ----------------------------------------------- -------- --------
1:<a href="####"></a>
2:<a href="javascript:void(0)"></a>
3:<a href="javascript:void(null)"></a>
4:<a href="#" onclick="return false"></a>
5:<span style="cursor:hand"></span>(好像在FF中不能显示)

Utilisez JavaScript avec prudence : void(0) Lorsque j'ai testé aujourd'hui, il était clair que le programme avait été exécuté et que le résultat final était correct, mais la page ne s'actualiserait pas.

Testé sous FireFox2.0 et IE7, le résultat est normal, mais IE6 ne s'actualise pas ! Après une enquête minutieuse, j'ai découvert que le lien de la page est bc7b07e337122839815b8dc979467045, le problème réside dans ce vide. (0 ) activé !

Jetons d'abord un coup d'œil à la signification de void(0) en JavaScript : void en JavaScript est un opérateur qui spécifie d'évaluer une expression mais de ne pas renvoyer de valeur. Le format d'utilisation de l'opérateur

void est le suivant :



e-xpression est une expression standard JavaScript à évaluer. Les parenthèses autour des expressions sont facultatives, mais c'est une bonne pratique de les écrire. Nous pouvons spécifier des hyperliens en utilisant l'opérateur void. L'expression est évaluée mais rien n'est chargé dans le document actuel. Le code ci-dessus crée un lien hypertexte qui ne fait rien lorsque l'utilisateur clique dessus. Lorsque l'utilisateur clique sur le lien, void(0) est évalué à 0, mais n'a aucun effet sur JavaScript. 0408054196e655f677973fb4d7c99865Rien ne se passera si vous cliquez ici5db79b134e9f6b82c0b36e0489ee08edEn d'autres termes, si vous souhaitez effectuer un traitement sans actualiser la page dans son ensemble, vous pouvez utiliser void( 0), mais lorsque vous devez actualiser la page, vous devez être prudent. En fait, nous pouvons utiliser 97fa358e0bae0e3ffc418bd78593cfa5, cette phrase effectuera une opération de soumission. Alors, dans quelles circonstances void(0) est-il utilisé plus souvent ? Sans actualisation, bien sûr, c'est Ajax. Si vous regardez la page Web Ajax, vous verrez généralement beaucoup de void(0), :), donc lorsque vous utilisez void. (0) ), il est préférable de se demander si cette page doit être actualisée dans son ensemble.
1. javascript:void (e-xpression)
2. javascript:void e-xpression

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