J'ai beaucoup de liens sur ma page avec class="popup"
.
Je veux que tous ceux-ci s'ouvrent dans une nouvelle fenêtre.
Y a-t-il un moyen simple de définir cela avec JavaScript?
J'ai beaucoup de liens sur ma page avec class="popup"
.
Je veux que tous ceux-ci s'ouvrent dans une nouvelle fenêtre.
Y a-t-il un moyen simple de définir cela avec JavaScript?
Je suis en train d'utiliser .live()
pour prendre en charge les liens qui pourraient être ajoutés ultérieurement au DOM. Si vous n'ajoutez pas de liens à partir des gestionnaires d'événements, des rappels Ajax, etc., vous pouvez simplement utiliser .click()
.
$('a.popup').live('click', function (e) {
window.open(this.href);
e.preventDefault();
});
Veuillez noter que, selon la spécification actuelle de HTML5, vous pouvez également utiliser :
comme vous le pouviez auparavant en HTML4. De cette manière, vous n'avez pas besoin de Javascript. Cependant, l'utilisation de target
n'est pas recommandée sur une doctype XHTML, car elle n'est pas considérée comme un attribut valide.
MISE À JOUR: Depuis la documentation de jQuery
À partir de jQuery 1.7, la méthode .live() est obsolète. Utilisez .on() pour attacher des gestionnaires d'événements. Les utilisateurs de versions plus anciennes de jQuery devraient utiliser .delegate() de préférence à .live().
Si vous avez besoin d'aide pour modifier votre code, assurez-vous de consulter les questions précédentes sur StackOverflow. Utiliser la recherche SO [jquery] live deprecated est un bon début.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.