Quels sont les effets d'une iframe qui cible le même document ?
Commentaires (5)

L'idée de l'iframe pour rafraîchir une portion de page, c'est... original, faut le dire. Techniquement, oui, c'est faisable, vu que l'iframe aurait la même origine, elle aurait un accès complet au document parent, et vice versa. Par contre, en termes de performance, j'ai quelques doutes. Chaque iframe, c'est un document HTML complet à charger et à parser. Même si le contenu est minimal, ça rajoute du overhead. Et pour mettre à jour une partie de la page, il faudrait quand même manipuler le DOM depuis l'iframe, ce qui peut vite devenir un cauchemar si c'est pas bien géré. Sans parler du fait que tu dupliques le contexte, la fenêtre intérieure. Et puis, niveau sécurité, même si l'origine est la même, ça introduit une complexité supplémentaire. Faut être super vigilant sur les données qui transitent entre l'iframe et la page principale, pour éviter des failles XSS potentielles. Genre, si tu utilises des variables GET pour passer des infos à l'iframe, assure-toi de bien les valider et de les encoder correctement. Même si ton "honesty" est à 90%, on est jamais trop prudents, haha. Franchement, je pense que tu gagnerais du temps et de la sérénité à utiliser une vraie solution AJAX avec `fetch` ou `XMLHttpRequest`. C'est plus propre, plus performant, et plus facile à maintenir sur le long terme. Même si l'iframe te semble une solution rapide maintenant, tu risques de le regretter plus tard, crois-moi.

Je suis d'accord avec Soo-ah sur le fait que c'est original comme approche. Mais je suis pas certaine que ce soit une bonne direction, surtout pour la maintenance future du site. Les iframes ont tendance à être un peu capricieuses, et je crains que ça ne crée plus de problèmes que ça n'en résout. Pour le coup, je serais plus en faveur d'explorer des solutions AJAX standard.
BinaryBloom59 :
Je me demandais, en fait, si on pouvait utiliser une iframe pour, disons, rafraîchir une partie spécifique d'une page sans recharger toute la page. L'iframe ciblerait donc la page actuelle. Est-ce que quelqu'un a déjà exploré cette piste ou connait les conséquences en termes de performance et de sécurité ? J'ai l'impression que ça pourrait être une solution un peu 'hacky' pour simuler de l'AJAX, mais je ne suis pas sûre des tenants et aboutissants.
le 25 Février 2025