IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Faire comme une Iframe+référenssable+mémorisable, la solution? +débats

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 61
    Points : 18
    Points
    18
    Par défaut Faire comme une Iframe+référenssable+mémorisable, la solution? +débats
    Bonjour,

    Je cherche une alternative au iframe.

    Je désire connaitre la meilleure technique pour faire tout ce que fait une iframe sans utiliser les balises <iframe> et qui en plus peut être trouvé par le robot google et qui en plus garde en mémoire la page visité en cour...

    Pour une meilleur compréhension de mon problème et celui de bien d'autres je vous invite à voir ma page (multi langues, multi résolutions, multi fenêtres) :

    http://kunpen75.free.fr/aa/fr/index3.php
    (Page en résolution 1680x1050 sur laquel je travail actuellement)

    http://kunpen75.free.fr/aa/ (Toutes résolutions non mis à jour)
    http://kunpen75.free.fr/bb (Ancienne version)

    Mon analyse de débutant:

    - Pourquoi pas iframe?

    1) Parait il le moteur de google ne va pas référencer les pages dans une iframe quoi que avec un sitemap.xml va t'il le faire?

    2) Le consortium W3C ne tolèrent pas les iframes et parait il le prochain navigateur IE (utilisé par tout les utilisateurs lambda sinon je m'en passerais bien) utilisarea que les pages validé W3C.

    3) Les pages dans une iframe risquent de s'ouvrir toute seules sans la page maître mais bon il existe des script pour empêcher ça...

    4) Une iframe qui s'auto adapte à la hauteur d'une page n'est pas possible sous firefox.

    5) Dommage je trouvais ça super pratique quand ont maîtrise les target, transparence, musique qui reste chargé malgré le changement de pages, etc...


    - Alors utilise des pseudo frames ou include PHP ou des layer CSS !

    1) Include PHP me parait être une très bonne solution mais je vous avoue que j'ai du mal à bien saisir son fonctionnement, ça me parrais complexe et en plus je compte utiliser des CMS dans mes pseudo frames qui elles même sont fait en PHP qui elles même utilisent des include, donc bien compliqué tout ça, sans compter le fait que c'est pas très visuellement graphique à la conception donc encore plus bordélique pour s'y retrouver...
    Et c'est pas cross domain je crois...

    2) CSS oui j'adore, c'est léger, se redimensionne automatiquement par rapport à la résolution, et peut être appelé dans chaque pages via un simple
    <link rel="stylesheet" type="text/css" href="moncss.css" /> en début de page, mais bon ça reste aussi un peu bordélique sans visu graphique mais ça vaux le coup.
    J'aime beaucoup cet exemple
    http://css.developpez.com/tutoriels/...ers/exemple_1/
    qui malheureusement ne fonctionne pas sauf si je fait appel à <link rel="stylesheet" type="text/css" href="moncss.css" /> en début de chaque pages que j'ai pas encore testé sans compter le fait que cela ne fonctionnera peut être pas si j'appelle un fichier .swf en FLASH et que ça ne gardera pas forcément en mémoire la page si je passe d'un lien à un autre... (je vais expliquer en dessous)

    3) Pseudo frame ça reviens quasiment au même qu'une page maître qui se recharge entièrement mais il existe <object> mais ne fonctionne pas sous IE apparemment voir http://intranation.com/test-cases/object-vs-iframe/


    - Comment ça garder une page en mémoire ?

    Par exemple:
    Sur ma page maître statique avec lien1, lien2, lien3 ,etc...
    J'ai une iframe contrôlé par les liens ci dessus (donc lien1, lien2, lien3 ,etc...)
    Si je clic sur le lien1 la page http://www.google.fr va s'ouvrir dans mon iframe et si je tape babar dans google il va m'afficher les résultats de la recherche...
    Puis si je clic sur le lien2 la page http://www.monsite.com/mapage2.php apparait.
    Puis je clic à nouveau sur lien1 qui va afficher la page http://www.google.fr/search?hl=fr&q=...chercher&meta= avec les résultats recherché sur le mot clef babar au lieu de revenir à la page de base sans recherche de http://www.google.fr
    Voila ce que j'appel garder en mémoire une page...

    Pour un test pratique, aller sur http://kunpen75.free.fr/aa/fr/index3.php
    puis sur "lien mémoire" tout en bas du menu de gauche
    puis dans google taper ce que vous voulez ou babar par exemple
    puis cliquer sur "Liens classé" puis sur "link"
    puis revenez sur "lien mémoire" et vous verrez que votre recherche dans google est toujours la
    Le tout sans avoir à changer toute la page maître et à recharger les multiples images, etc... Bon je sais ya le cache pour ça mais quand même ça reste bien plus rapide...

    L'accordéon vertical + la démo sont disponible ici:
    http://www.dezinerfolio.com/2007/07/...pt-accordions/


    Conclusion:
    J'aimerai avoir une alternative pas trop complexe, souple et rapide pour
    une page maître statique avec des liens qui pointent sur des iframe avec à l'intérieur des pages ou modules CMS
    qui gardent en mémoire leur positions de page lue
    qui sont suivis par le robot google
    qui sont valide W3C
    Dont la taille soit ajusté automatiquement au contenu de la page incluse...
    quitte à abandonner l'accordéon toutes les solutions sotn bonne à prendre à partir du moment ou cela remplis les critères ci-dessus à un yota près...


    Voila donc si vous avez des techniques intéressante à tester ou autres conseils, exemples ou tout simplement en débattre pour trouver une solution à ce fameux problème de comment remplacer la balise <iframe>
    je vous en serais reconaissant et bien d'autres je pense car je suis pas le seul à buter sur ce genre de problème.


    Pour les téméraires, un bonus !

    Hors sujet sujet mais presque vu qu'il s'agit d'iframe ou de lightbox:
    j'aimerai changer le target d'un lien fait sous Flashchat (en FLASH)

    _root.profiler.getURL(val, '_blank', 'POST');
    Modifié en
    _root.profiler.getURL(val, '_chatprofile', 'POST');

    En lightbox(faux pop up en Ajax qui s'affiche en premier plan sur fond sombre)


    Aussi j'aimerais que la section "chat" de mon site ne se réactualise pas quand je change de liens sur le menu de gauche et qu'il garde en mémoire la position du chat en flash bons ça dois être sûrement du au preload.swf mais il dois surement exister une tchnique pour que ça reste tel quel, j'ai essayé via un layer(calque) qui apparait ou disparais mais même résultat du fait que je met toujours ça dans dans une iframe et que c'est impossible pour moi de poser ça en tant que <objet>flash

    Vu que je compte principalement faire un site de rencontres franco, japonais, anglophone, gratuit,

    j'utilise AzDGDatingMedium v 1.8.3 FP1
    (module principal de rencontres)
    http://www.azdg.com

    couplé à FlashChat V5.0.7
    (module de chat en flash avec profiles qui apparaissent sous AzDG Dating)
    http://www.tufat.com


    Voili, voila, je mettrais en ligne tout les codes que j'ai longuement recherché sur le net avec des explications clair et impressions écran (screenshot) si j'arrive à finir mon projet fou et qu'il fonctionne à merveille.

    Donc les amis à vos claviers !

    PS :désolé pour les fautes d'orthographe...

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 61
    Points : 18
    Points
    18
    Par défaut
    J'ai enfin trouvé une alternative à la balise <iframe> et c'est valide W3C !

    <object data="page1.html" type="text/html" style="width:200px;height:100px" /></object>

    Ca fonctionne plutôt bien sous Firefox mais très mal sous IE surtout si je veux inclure des pages CMS fait en PHP car dans type="ya pas php" et la transparence ne fonctionne pas non plus...

    type="blabla" est obligatoire? Voici une liste des format supporté
    http://joliclic.free.fr/html/object-tag/index.php


    A la barbare sans type="blabla" ça donne ça

    <object type="text/html" id="myframe3" name="frame3" data="page1.php" style="overflow:visible; height:800px; width:1370px;" allowtransparency="true"></object>

    Et vais je enfin pouvoir afficher la hauteur d'une page automatiquement dans un <object> ? Si ya une méthode, j'aimerai bien la connaitre...

    Quand aux liens mémoire c'est apparemment du au fait que l'accordéon cité dans mon précédent post n'utilise pas de lien du genre <a href="#"
    mais par quel magie ils ont pu faire cela? Vous avez une idée?

    Voici une nouvelle page test qui utilise l'accordéon en vitesse 1 ainsi que les balises <object> qui remplace mes <iframe>
    Attention ça plante IE!

    http://kunpen75.free.fr/aa/fr/index3a.php

    Bon je vais continuer mes test et recherches et je pense que je vais éventuellement me passer de l'accordéon mais pas question de me séparer des iframe enfin object maintenant

    Si vous pourriez m'orientez ce serais sympa car je suis plus un bricoleur du net qu'un développeur confirmé.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 61
    Points : 18
    Points
    18
    Par défaut
    Du nouveau ! La solution de contournement !

    Après moult recherches voilà l'astuce, le code est valide quelque soit le doctype de la page :
    Code:

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <object data="http://adresse_de_la_page.html" type="application/xhtml+xml" style="width: 340px; height: 280px;">
         <!--[if IE]>
              <iframe src="http://adresse_de_la_page.html" style="width:340px; height:280px;" allowtransparency="true" frameborder="0" ></iframe>
         <![endif]--> 
    </object>

    On triche un peu puisqu'on utilise la balise iframe pour IE mais uniquement pour lui (la balise iframe n'est pas valide en XHTML Strict mais entourée des balises de commentaire [if IE] ça ne pose plus de problème). IE reconnait les balises object (type="text/html") mais il n'affiche rien si l'objet n'est pas sur le même domaine. Pour que ça fonctionne, il faut remplacer type="text/html" par type="application/xhtml+xml" dans la balise object pour que IE (incompétent comme il est) ne reconnaisse plus cette balise et lise le contenu alternatif (c'est à dire l'iframe)

    Résultat : le code reste assez simple, il est valide et compatible avec 100% des navigateurs même les plus mauvais.

    Mais il reste toujours des questions sans réponses... A suivre

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 61
    Points : 18
    Points
    18
    Par défaut
    J'ai changer le style entier du site et aujourd'hui je recherche toujours un moyen de mémoriser les pages inclue dans les iframe, chose que je n'arrive pas à reproduire sans le script "simple accordion" (lien du scipt plus haut)
    donc si vous avez la soluce je suis preneur !

    Il dois sûrement s'agir de liens qui n'utilisent pas de balises
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="#"/>lien qui garde en mémoire la page dans une iframe</a>
    Sinon il existe des autre smoyens via des sessions par cookie et autres script PH mais j'y connais rien donc si l'un de vous pourrais m'orienter avec une solution simple pour un novice comme moi, merci ^^

    Nouveau site test: http://kunpen75.free.fr/a2

Discussions similaires

  1. Faire un onclick sur une iframe
    Par djandreass dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 04/05/2009, 10h52
  2. Page web infectée par une iframe quelle solution?
    Par papisdoums dans le forum Sécurité
    Réponses: 12
    Dernier message: 24/04/2009, 15h20
  3. Réponses: 2
    Dernier message: 02/06/2008, 09h10
  4. [HTML] Mettre une variable comme adresse d'une Iframe et faire changer cette variable
    Par thefdm dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 29/01/2008, 18h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo