53 votes

Widget - Iframe versus JavaScript

Je dois développer un widget qui sera utilisé par un site tiers. Ce n'est pas une application à déployer sur un site de réseau social. Je peux donner aux gars du site un lien à utiliser comme src d'un iframe ou le développer comme requête JavaScript.

Quelqu'un peut-il me dire s'il vous plaît les compromis entre les 2 approches (IFrame versus JS)?

30voto

Amr ElGarhy Points 12696

Je cherchais sur la même question et j'ai trouvé cet article intéressant:
http://prettyprint.me/prettyprint.me/2009/05/30/widgets-iframe-vs-inline/

Je vais ajouter plus de liens ici si j'ai trouvé quelque chose d'intéressant.

13voto

john Smith Points 3762

Pourquoi ne pas faire les deux?

Je préfère proposer aux sites tiers un script tel que:

  <script type="text/javascript" src="urlToScript"></script>
 

le fichier sur votre serveur ressemble à:

 document.writeln('<iframe src="pathToYourGroovyWidget" 
name="MagicIframe" width="300" height="600" align="left" scrolling="no" 
marginheight="0" marginwidth="0" frameborder="0"></iframe>');
 

METTRE À JOUR:

Le gros inconvénient de l'utilisation d'un iframe qui pointe vers une URL sur votre serveur est que vous ne générez pas de "vrai" lien en arrière si quelqu'un clique sur une URL de votre serveur pointant vers votre serveur.

5voto

wsanville Points 22066

Je suis sûr que beaucoup de développeurs/propriétaires de site apprécierait un Javascript solution qu'ils peuvent de style à leurs besoins plutôt que d'utiliser un iframe. Si j'allais à inclure une composante d'un tiers, je préfère le faire via Javascript parce que je voudrais avoir plus de contrôle.

Aussi loin que la facilité d'utilisation, les deux sont similaires dans la simplicité, donc pas de réel compromis là.

Une autre pensée, assurez-vous que vous obtenez un certificat SSL quel que soit le domaine que vous êtes d'hébergement de ce sur et écrire l'instruction include en conséquence si la page est servi sur SSL. Dans le cas où votre site, les propriétaires ont une raison pour l'utilisation de SSL, ils auraient sûrement apprécier ce, parce que Firefox et les autres navigateurs vont se plaindre quand une page est servi avec un mélange de secure/contenu non sécurisé.

4voto

Apopii Dumitru Points 13

Vous pouvez résoudre le problème de dimensionnement iframe avec ceci: http://www.smashingmagazine.com/2014/02/27/making-embedded-content-work-in-responsive-design/

3voto

timmow Points 1625

Si le widget peut être incorporé dans une iframe, ce sera mieux pour le frontend de la performance du site d'hébergement comme iframes ne pas bloquer le téléchargement de contenus. Cependant, comme d'autres l'ont fait remarquer il y a d'autres inconvénients à l'utilisation d'iframes.

Si vous n'en œuvre en javascript, veuillez considérer frontend performances les meilleures pratiques pour le développement. En particulier, vous devriez regarder Non bloquant le chargement des fichiers javascript. Google analytics et d'autres 3ème partie widget fournisseurs prennent en charge cette méthode de chargement. Il serait également utile si vous pouvez charger le javascript en bas de la page.

Prograide.com

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.

Powered by:

X