Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3096 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Problème avec le chargement des iframes.

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

Problème avec le chargement des iframes.

n°1145310
darkkrab
Posté le 10-07-2005 à 02:03:22  profilanswer
 

J'essai de réécrire un script en javascript pour une sorte de forum avec des messages. Le but est de faire un ''Dropdown'' menu avec des iframes. Jusque là, ça va, mais le problème est que je veux que les iframes ne se télécharge pas à l'avance, pour sauver de la bande passante. Avec Netscape, pas de problème, les iframes ne se télécharge pas à l'avance lorsqu'elles sont cachées. Cependant, avec Mozilla 'Firefox' et Internet Explorer elle se télécharge à l'ouverture de la page principale.
 
J'ai essayé de mettre src='about:blank' dans les ifames, mais ça cause 2 problèmes:
1)Mon script ne fonctionne qu'une fois avec Netscape.
2)Ça semble pas vouloir s'afficher si on insert la page principale dans une ifame. (Oui, je sais, j'adore les iframes)
 
Solution envisagés:
J'ai essayé de mettre un temps d'attente (avec SetTimeOut) avant le rechargement des iframes, marche pas vraiment.
J'ai essayé de mettre le lien des pages directement dans les src des iframes, IE preload les iframes, pas le but recherché.
 
J'en est conclu que je ne pouvais pas mettre src='about:blank' dans les iframes à cause de Netscape et que si je mets  src='lapage.htm', Mozilla et Internet Explorer vont précharger les pages d'avance.
 
Voilà où j'en suis rendu avec mon script, une aide serait fortement apprécier.
---------------------------------------------------------------------------------------------------------------------------------------------<html>
<head>
<script type="text/javascript">
<!--
var enablepersist="off"  
var collapseprevious="no"
if (document.getElementById){
document.write('<style type="text/css">.switchcontent{display:none;}</style>')
}
function getElementbyClass(classname){
ccollect=new Array()
var inc=0
var alltags=document.all? document.all : document.getElementsByTagName("*" )
for (i=0; i<alltags.length; i++){
if (alltags[i].className==classname)
ccollect[inc++]=alltags[i]
}
}
function contractcontent(omit){
var inc=0
while (ccollect[inc]){
if (ccollect[inc].id!=omit)
ccollect[inc].style.display="none"
inc++
}
}
function expandcontent(cid){
if (typeof ccollect!="undefined" ){
if (collapseprevious=="yes" )
contractcontent(cid)
document.getElementById(cid).style.display=(document.getElementById(cid).style.display!="block" )? "block" : "none"
}
}
function revivecontent(){
contractcontent("omitnothing" )
selectedItem=getselectedItem()
selectedComponents=selectedItem.split("|" )
for (i=0; i<selectedComponents.length-1; i++)
document.getElementById(selectedComponents[i]).style.display="block"
}
function get_cookie(Name) {  
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {  
offset += search.length
end = document.cookie.indexOf(";", offset);
if (end == -1) end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}
function getselectedItem(){
if (get_cookie(window.location.pathname) != "" ){
selectedItem=get_cookie(window.location.pathname)
return selectedItem
}
else
return ""
}
function saveswitchstate(){
var inc=0, selectedItem=""
while (ccollect[inc]){
if (ccollect[inc].style.display=="block" )
selectedItem+=ccollect[inc].id+"|"
inc++
}
document.cookie=window.location.pathname+"="+selectedItem
}
function do_onload(){
uniqueidn=window.location.pathname+"firsttimeload"
getElementbyClass("switchcontent" )
if (enablepersist=="on" && typeof ccollect!="undefined" ){
document.cookie=(get_cookie(uniqueidn)=="" )? uniqueidn+"=1" : uniqueidn+"=0"  
firsttimeload=(get_cookie(uniqueidn)==1)? 1 : 0
if (!firsttimeload)
revivecontent()
}
}
if (window.addEventListener)
window.addEventListener("load", do_onload, false)
else if (window.attachEvent)
window.attachEvent("onload", do_onload)
else if (document.getElementById)
window.onload=do_onload
if (enablepersist=="on" && document.getElementById)
window.onunload=saveswitchstate
//-->
</script>
<script type="text/javascript">
<!--
function reloadifr(ifr,redi){
top.frames[ifr].location.href = redi
}
//-->
</script>
</head>
<body>
<font onClick="expandcontent('sc1');reloadifr('sc1','message_int1.htm')" class="gmessa">Nom du post 1</font><br>
<div id="sc1" class="switchcontent">
<iframe name="sc1" width=99% height=205 src="about:blank" style="border:2px #990000 solid;" frameborder="no"  marginwidth=10 marginheight=10></iframe>
</div><br>
 
<font onClick="expandcontent('sc2');reloadifr('sc2','message_int2.htm')" class="gmessa">Nom du post 2</font><br>
<div id="sc2" class="switchcontent">
<iframe name="sc2" width=99% height=205 src="about:blank" style="border:2px #990000 solid;" frameborder="no"  marginwidth=10 marginheight=10></iframe>
</div><br>
 
<font onClick="expandcontent('sc3');reloadifr('sc3','message_int3.htm')" class="gmessa">Nom du post 3</font><br>
<div id="sc3" class="switchcontent">
<iframe name="sc3" width=99% height=205 src="about:blank" style="border:2px #990000 solid;" frameborder="no"  marginwidth=10 marginheight=10></iframe>
</div><br>
 
<font onClick="expandcontent('sc4');reloadifr('sc4','message_int4.htm')" class="gmessa">Nom du post 4</font><br>
<div id="sc4" class="switchcontent">
<iframe name="sc4" width=99% height=205 src="about:blank" style="border:2px #990000 solid;" frameborder="no"  marginwidth=10 marginheight=10></iframe>
</div><br>
</body>
</html>
-------------------------------------------------------------------------------------------------------------------------------------------

mood
Publicité
Posté le 10-07-2005 à 02:03:22  profilanswer
 

n°1145327
gatsusat
Posté le 10-07-2005 à 09:00:01  profilanswer
 

un menu ak des iframes, jamais entendu pareil  connerie

n°1145354
plainsofpa​in
Pingouino's lover
Posté le 10-07-2005 à 11:18:51  profilanswer
 

et puis tu pourrais mettre ton code entre [code ] et [ /code]
 
Edit : et coder comme on fait de nos jours, c'est à dire, vu que tu as des css, foutre les attribtus de présentation dans la css. Les font ne doivent plus être utilisées depuis que les css existent ...


Message édité par plainsofpain le 10-07-2005 à 11:19:42

---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
n°1145627
darkkrab
Posté le 10-07-2005 à 17:43:55  profilanswer
 

Pour gatsusat: Ça sauve de la bande passante, c'est très esthétique et pratiques.
 
Pour plainsofpain: Ça ne règle pas mon problème, j'obtimiserai plus tard, si mon code fonctionne.
 
On dirait que personne ne trouve! Ça doit pas être si compliquer.

n°1145636
gatsusat
Posté le 10-07-2005 à 18:26:13  profilanswer
 

putain sauver de la bande passante? ??? mais t'es ravagé ?
pour le peu ke tu sauve, encore il faudrait mieux que tu le fasse en AJAX (XmlHttprequest) ca serait encore plus propre.
 
Parce que là franchement, j'ai jamais vu une idée aussi débile.
Mais bon, ca veut aussi dire que ton menu fait 10 km de long si tu veux passer par une solution aussi bancale

n°1145644
masklinn
í dag viðrar vel til loftárása
Posté le 10-07-2005 à 18:42:09  profilanswer
 

darkkrab a écrit :

Ça sauve de la bande passante


Montre donc le code des pages HTML qu'on se marre [:cupra]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1145653
darkkrab
Posté le 10-07-2005 à 19:06:49  profilanswer
 

Avec un site de plus de 200 000 users on a intérêts à optimiser, même  si on sauve peu par personne. Pouvez-vous répondre à la question ou seulement insulter les gens?

n°1145655
gatsusat
Posté le 10-07-2005 à 19:17:08  profilanswer
 

bah si tu comptes mettre 200 000 User sur ton site laisse moi t'apprendre 2 choses :  
 
1- les iframes ca existe pas, c'est pas fait pour faire des sites Internet, au pire tu utilise ca dans un intranet, mais bon ca fera plus de caca qu'autre chose.
2- faire un menu c'est bien, le faire en Javascript totalement c'est moins bien, ca rend ton site moins accessible, et vu le nombre de personnes ke tu vises c'est foutu d'avance
3- utiliser des iframes dans un menu j'appelle cela de l'héresie et de la pure folie.
4- Si tu veux qu'on taide on voudrait bien un bout de ton code HTML ca nous permettra de voir les interaction entre le JS et le HTML
5- un lien vers ton exemple ca serait un mega plus je pense.
6- C'est pas en utilisant des grigri bancales qu'on optimise un site avec 200 000 users

n°1145657
darkkrab
Posté le 10-07-2005 à 19:23:56  profilanswer
 

J'utilise les iframes pour le forum seulement et c'est seulement une option plus agréable lors de la navigation.
 
Je tente seulement de faire fonctionner mon script ci-haut totalement avant de l'optimiser, rien d'autre. Vous n'avez pas besoin d'un bout de mon code html pour ce faire. Faîtes copier-coller le script et essayer de comprendre.

n°1145659
gatsusat
Posté le 10-07-2005 à 19:26:33  profilanswer
 

erf javais po vu ke tu avais colled tout le menu

mood
Publicité
Posté le 10-07-2005 à 19:26:33  profilanswer
 

n°1145694
gatsusat
Posté le 10-07-2005 à 20:15:30  profilanswer
 

déjà un code comme ca c'est plus mieux on va dire :  
 
J'ai commenté un strict minimum
le but du jeu ici est de ne pas initialiser le SRC de liframe, mais initialiser ce SRC lorsque on affiche cet iframe. C'est plus intelligent.
tu verra aussi que je fais du JS non intrusif, et ce code est beaucoup plus propre que la bouse que tu m'a pondu.
au passage tu mettra tous dans les CSS
genre la class switchcontent doit contenir tout ce qui concerne la mise en forme de l'iframe
 
PS : s'il te plait prend exemple là dessus et fait un code propre merci. JE ne donne pas cher du code final
si tu veux optimiser la bande passante, commence déjà par optimiser le code HTML
 
 

Code :
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <head>
  4. <style>
  5. IFRAME{
  6. width:200px;
  7. height:200px;
  8. }
  9. </style>
  10. <script type="text/javascript">
  11. //On ajoute les fonctions d'affichage de chaque lien qui contient la classe Gmessa
  12. // Chaque lien porte le ID de l'iframe à afficher dans son HREF
  13. function checkLinks() {
  14.     if(!document.getElementsByTagName)
  15.         return;
  16.     var Menulinks = document.getElementsByTagName('A');
  17.     for(var i=Menulinks.length-1; i>=0; --i)
  18.         if(Menulinks[i].className.indexOf('gmessa') != -1) {
  19.             Menulinks[i].href = "javascript:SwitchIframe(\'" + Menulinks[i].title + "\')";
  20.    Menulinks[i].title = "";
  21.                 }
  22. }
  23. // On cache chaque iframe de la page qui contient la class switchcontent
  24. function hideAlliframe() {
  25.     if(!document.getElementsByTagName)
  26.         return;
  27.     var MenuIframes = document.getElementsByTagName('IFRAME');
  28.     for(var i=MenuIframes.length-1; i>=0; --i)
  29.         if(MenuIframes[i].className.indexOf('switchcontent') != -1) {
  30.       MenuIframes[i].style.display = "none";
  31.                 }
  32. }
  33. //On initiliase tout ce joli monde avec une fonction qui appelle les autres
  34. function initAll(){
  35. hideAlliframe();
  36. checkLinks();
  37. }
  38. window.onload = initAll;
  39. function SwitchIframe(numeroframe){
  40. var moniframe = document.getElementById('sc' + numeroframe);
  41. if (moniframe.style.display=='block') {
  42.  moniframe.style.display = 'none'; //ON cache l'iframe
  43. }
  44. else{
  45.  moniframe.style.display = 'block'; //On affiche l'iframe
  46.  moniframe.src = 'mapagehtml' + numeroframe + '.html'; //On rajoute le lien de l'iframe
  47. }
  48. }
  49. </script>
  50. </head>
  51. <body>
  52. <a href="#" title="1" class="gmessa">Nom du post 1</a><br>
  53. <iframe id="sc1" class="switchcontent"></iframe>
  54. <a href="#" title="2" class="gmessa">Nom du post 2</a><br>
  55. <iframe id="sc2" class="switchcontent"></iframe>
  56. <a href="#" title="3" class="gmessa">Nom du post 3</a><br>
  57. <iframe id="sc3" class="switchcontent" ></iframe>
  58. <a href="#" title="4" class="gmessa">Nom du post 4</a><br>
  59. <iframe id="sc4" class="switchcontent"></iframe>
  60. <br>
  61. </body>
  62. </html>


Message édité par gatsusat le 10-07-2005 à 20:26:29
n°1145703
darkkrab
Posté le 10-07-2005 à 20:30:46  profilanswer
 

C'est plus court, mais au téléchargement de la page, toutes les iframes s'ouvrent (pas très esthétique) et ça ne règle pas mon problème. Je voudrais que les ifames ne se téléchargent pas d'avance.
 
Merci quant même.

n°1145708
gatsusat
Posté le 10-07-2005 à 20:45:51  profilanswer
 

mon dieu
 
les iframes ne se telechargent puisque il n'y a pas de SRC=""
et donc ces iframe ne sont pas chargées. Tu comprend ou je dois te faire un Dessin ?
dans mon code je ne charge la page attachée à l'iframe que lorsque celle-ci s'affiche.
 
et j'ai ajouté un code JS ki cache toutes les iframes automatiquement dès l'ouverture de la page  
 
fais un copier coller  de ce code dans ton navigateur
 au passage il faut que ton javascript soit activé.
 
IE block le javascript lors de la premiere ouverture de la page.
 
teste aussi avec firefox tu verras.
 
d'après toi si j'ai fais ca c'est pour me branler ?  
 
function hideAlliframe() {  
    if(!document.getElementsByTagName)  
        return;  
    var MenuIframes = document.getElementsByTagName('IFRAME');  
    for(var i=MenuIframes.length-1; i>=0; --i)  
        if(MenuIframes[i].className.indexOf('switchcontent') != -1) {  
             MenuIframes[i].style.display = "none";  
                }  
}
 
 
dis moi, une fois ke la page est chargée, les iframes sont cachées ou non ?


Message édité par gatsusat le 10-07-2005 à 20:47:03
n°1145711
esox_ch
Posté le 10-07-2005 à 20:48:43  profilanswer
 

Quand je lis ce genre de message je me dis que franchement un acces a la profession serait benefique ... Mon dieu le boulet...

n°1145712
masklinn
í dag viðrar vel til loftárása
Posté le 10-07-2005 à 20:52:06  profilanswer
 

darkkrab a écrit :

Avec un site de plus de 200 000 users on a intérêts à optimiser, même  si on sauve peu par personne.


Et c'est sûrement pas avec des iframes qu'on optimise, surtout quand on a une mise en page composée uniquement de tables (ce qui est probablement ton cas).
 
Tu veux des sites avec beaucoup d'utilisateurs? va voir du côté de Sourceforge, Fark ou Slashdot, ça ce sont des sites avec des utilisateurs...
 
Et ils n'ont, étrangement, pas de frames


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1145713
gatsusat
Posté le 10-07-2005 à 20:52:50  profilanswer
 

les message de qui ?? de moi ?
 
tiens pour toi darkkrab j'ai fait encore plus cours avec iframe cachées dès le début (et vi tu verifieras la class switchcontent) comme un boulet je faisait appel à une fonction alors que j'avais juste à rajouter un teste dans ma fonction showhideiframe
 

Code :
  1. <table>
  2. <tr>
  3. <td><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  4. <html>
  5. <head>
  6. <style>
  7. .switchcontent{
  8. width:200px;
  9. height:200px;
  10. display:none;
  11. }
  12. </style>
  13. <script type="text/javascript">
  14. //On ajoute les fonctions d'affichage de chaque lien qui contient la classe Gmessa
  15. // Chaque lien porte le ID de l'iframe à afficher dans son HREF
  16. function checkLinks() {
  17.     if(!document.getElementsByTagName)
  18.         return;
  19.     var Menulinks = document.getElementsByTagName('A');
  20.     for(var i=Menulinks.length-1; i>=0; --i)
  21.         if(Menulinks[i].className.indexOf('gmessa') != -1) {
  22.             Menulinks[i].href = "javascript:SwitchIframe(\'" + Menulinks[i].title + "\')";
  23.    Menulinks[i].title = "";
  24.                 }
  25. }
  26. window.onload = checkLinks;
  27. function SwitchIframe(numeroframe){
  28. var moniframe = document.getElementById('sc' + numeroframe);
  29. if (moniframe.style.display=='block' || moniframe.style.display == null) {
  30.  moniframe.style.display = 'none'; //ON cache l'iframe
  31. }
  32. else{
  33.  moniframe.style.display = 'block'; //On affiche l'iframe
  34.  moniframe.src = 'mapagehtml' + numeroframe + '.html'; //On rajoute le lien de l'iframe
  35. }
  36. }
  37. </script>
  38. </head>
  39. <body>
  40. <a href="#" title="1" class="gmessa">Nom du post 1</a><br>
  41. <iframe id="sc1" class="switchcontent"></iframe>
  42. <a href="#" title="2" class="gmessa">Nom du post 2</a><br>
  43. <iframe id="sc2" class="switchcontent"></iframe>
  44. <a href="#" title="3" class="gmessa">Nom du post 3</a><br>
  45. <iframe id="sc3" class="switchcontent" ></iframe>
  46. <a href="#" title="4" class="gmessa">Nom du post 4</a><br>
  47. <iframe id="sc4" class="switchcontent"></iframe>
  48. </body>
  49. </html>


Message édité par gatsusat le 10-07-2005 à 20:53:14
n°1145715
gatsusat
Posté le 10-07-2005 à 20:55:07  profilanswer
 

on pourrai meme encore faire plus bourrin en rajoutant des nodes au dom mais bon po le courage ce soir

n°1145717
esox_ch
Posté le 10-07-2005 à 20:57:16  profilanswer
 

gatsusat a écrit :

on pourrai meme encore faire plus bourrin en rajoutant des nodes au dom mais bon po le courage ce soir


 
non pas de toi .. Meme si moi j'aurais pas pris la peine de perdre du temps a utiliser des iframes comme tu l'as fait .. non je parle du gugus qui se prend pour dieu et qui viens ici poser des questions stupides sur un code immonde


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1145722
gatsusat
Posté le 10-07-2005 à 20:59:50  profilanswer
 

ben en fait j'ai surtout fait ca pour bien comprendre le JS non obstrusif. Bon pour le moment ca se limite à la modification des tags existant, la prochaine fois je m'attaque aux nodes du dom
 
m'enfin bon je lui ai dit 50 fois que c'était stupide d'utiliser des iframes, mais il veut rien savoir
et vu la manière dont il code, il peut arrêter de coder tout de suite.
 
M'enfin je lui ai divisé par 2 voire le nombre de lignes, et je suis sur qu'on peut encore mieux faire  
:D :D  :D  :D  
 
Mais voila monsieur n'est pas content, et c'est pas lui qui va aller se casser le cul apparament


Message édité par gatsusat le 10-07-2005 à 21:01:12
n°1145725
esox_ch
Posté le 10-07-2005 à 21:04:06  profilanswer
 

Justement, ce genre de boulet faut pas le renseigner, comme ca a l'usure il va p-e comprendre qu'il fonce dans un mur


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1145730
gatsusat
Posté le 10-07-2005 à 21:06:42  profilanswer
 

ben jvois les choses différement, si a la rigueur on lui montre quelque chose de tout beau peut etre qu'il comprendra
 
mais je crois ke je my prend mal, jvais faire comme toi esox_ch
mais bon j'ai fais ca aussi sur un autre topic, le boulet je lui ai fait toute son integration graphique en CSS. et ce con il utilisait dreamweaver en Wysiwyg mon dieuuuuuuuuuuuuu
bon oki javais fait une tite gaffe dans mon code
mais ce con avec zapé un truc dans le code, un debut de div ak id erf. il merite des coups de boules et vu comment il a sacagé mon menu, c'est encore pire
yavait un strong par ligne dans les LI meme po foutu de foutre du gras via la CSS

n°1145732
esox_ch
Posté le 10-07-2005 à 21:10:37  profilanswer
 

Parcontre, un conseil, essaie d'ecrire plus en français ... Meme moi qui fais 5 fautes par mot j'ai de la peine a te comprendre ... alors je m'imagine mal les autres :D


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1145734
darkkrab
Posté le 10-07-2005 à 21:12:21  profilanswer
 

Ton nouveau code fonctionne, mais pas l'ancien, pour te prouver le problème:
 
Met une page appeler mapagehtml1.html à coté des la page contenant le script. Dans cette page met une image. Vide le dossier 'C:\Documents and Settings\Propriétaire\Local Settings\Temporary Internet Files' et ouvre la page avec le script. Tu va voir que ton ancien script téléchargeait toutes les iframes d'avance et que les iframes s’ouvraient.
 
Merci.

n°1145735
gatsusat
Posté le 10-07-2005 à 21:12:24  profilanswer
 

Ouais là j'ai même pas pris la peine de faire gaffe à l'orthographe et à la grammaire, on va dire que j'étais pressé, promis esox_ch.
 
et dire que je suis le premier à gueuler sur la grammaire et l'orthographe

n°1145739
darkkrab
Posté le 10-07-2005 à 21:16:44  profilanswer
 

Les iframes sont pour ceux qui veulent les utiliser parmis les users, où est le problème? À moins que vous ayez une idée plus compacte pour faire suivre des post sans tous les préloader d'avance et sans changer de page (visuellement).

n°1145743
gatsusat
Posté le 10-07-2005 à 21:20:11  profilanswer
 

XMLHttpRequest
 
http://www.openweb.eu.org/articles [...] tprequest/
 
tu as du apprendre à faire des sites web dans une pochette surprise


Message édité par gatsusat le 10-07-2005 à 21:21:35
n°1145746
masklinn
í dag viðrar vel til loftárása
Posté le 10-07-2005 à 21:23:11  profilanswer
 

darkkrab a écrit :

Les iframes sont pour ceux qui veulent les utiliser parmis les users, où est le problème? À moins que vous ayez une idée plus compacte pour faire suivre des post sans tous les préloader d'avance et sans changer de page (visuellement).


xmlHttpRequest si l'utilisateur l'active [:spamafote]
 
Parce que là il se passe quoi si, par exemple, mon navigateur ne gère pas les frames/iframes? [:petrus75]


Message édité par masklinn le 10-07-2005 à 21:23:48

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1145751
darkkrab
Posté le 10-07-2005 à 21:28:32  profilanswer
 

Pour gatsusat: Désolé de pas avoir pensé au XMLHttpRequest.
 
Pour Masklinn: La navigation traditionelle.

n°1145752
gatsusat
Posté le 10-07-2005 à 21:31:49  profilanswer
 

et tu fais comment pour passer à la navigation traditionnelle si le mec n'a pas le JS d'activé ?
 
le mieux serait que tu recode toute ce qui est JS sur ton forum de la manière dont je l'ai fait.
 
D'abord tu tassure que ton forum fonctionne parfaitement sans javascript
 
ensuite tu lui colle une couche javascript comme je te l'ai montré

n°1145757
darkkrab
Posté le 10-07-2005 à 21:37:31  profilanswer
 

C'est une des choses que j'ai envisagé de faire. Mon premier post commence par 'J'essai de réécrire'. J'essai de rendre mon forum interactif pour ceux qui le supporte et pour les autres, la navigation traditionnelle. C'est simple et efficace.

n°1145762
gatsusat
Posté le 10-07-2005 à 21:40:03  profilanswer
 

ben tu as la solution toute faite entre les mains car le code que tu avais avant, je sais pas qui l'avait ecrit mais il était mega bancal

n°1145763
darkkrab
Posté le 10-07-2005 à 21:42:15  profilanswer
 

J'avais remarquer. Mais je fait tout le temps des petites retouche avec le temps.

n°1145765
gatsusat
Posté le 10-07-2005 à 21:46:36  profilanswer
 

ben on va dire que j'ai jamais vu un code aussi crade lol

n°1145766
darkkrab
Posté le 10-07-2005 à 21:48:37  profilanswer
 

Je suis sûr que t'as vu pire, sérieusement.

n°1145772
gatsusat
Posté le 10-07-2005 à 22:00:20  profilanswer
 

ouais ya 7 ans sur mon tout premier site

n°1145775
darkkrab
Posté le 10-07-2005 à 22:02:43  profilanswer
 

lol, mon deuxième site avait déjà une frame.

n°1145776
masklinn
í dag viðrar vel til loftárása
Posté le 10-07-2005 à 22:05:29  profilanswer
 

darkkrab a écrit :

Je suis sûr que t'as vu pire, sérieusement.


Laisse, il a les hormones qui se déclenchent, il est en pleine puberté alors il s'excite tout seul.
 
Histoire d'être un peu constructif:
Pour un chargement progressif il y a en fait deux possibilités pas trop trop crade et non obtrusive.
 
Legacy => tu charges ta page, et via javascript et si la chose est possible tu crées une iframes cachée. Pas deux, une seule. Cette iFrame sera utilisée pour effectuer des échanges entre la page locale et le serveur: tu changes sa "location.href" (par ce dont tu as besoin), ça va chercher une page donnée, puis un onload dans la page chargée va utiliser ces données pour modifier la page contenant l'iframe via manipulations du DOM.
 
Moderne => beaucoup plus propre mais un peu moins supporté, tu utilises xmlHttpRequest pour effectuer tes requêtes de données. Ca te permet de faire transiter des requêtes plus complexes et de garder un DOM propre (puisque tu n'as pas besoin de créer une iframe de communication). De même, l'utilisateur charge initialement une page normale et un script onload va la modifier afin de permettre l'utilisation d'xmlHttpRequest
 
Google Style.
Google, dans ses produits Gmail et Google Suggests, utilise ce genre de choses. Leur approche visant la compatibilité, ils l'effectuent ainsi:
1- Une page fonctionnelle
2- Un script au chargement qui teste la possibilité d'utiliser xmlHttpRequest et lance la procédure pour le mettre en place si dispo
3- Si l'étape précédente a raté, un script équivalent tente de mettre en place une iframe cachée
4- Si l'étape 3 rate, l'utilisateur garde sa page classique fonctionnelle.
 
Par contre il y a une chose à laquelle il faut faire TRES attention quand on utilise ce genre de choses: les liens&urls.
 
Tu te dois, quand tu mets en place ces trucs, de fournir à l'utilisateur des permalinks et une documentation afin qu'il puisse toujours bookmarker un post ou un thread précis... alors qu'il ne change en fait jamais de page. C'est probablement le plus gros problème avec le fait que les boutons PRECEDENT et SUIVANT deviennent inutilisable.
 
En fait, le gros inconvénient de cette méthode est qu'un certain nombre de fonctionalités basiques et standard du navigateur sont littéralement détruites (c'est pareil quand tu utilises des iframes comme tu le fais btw).
 
Après, c'est une question de balance entre ce que ça apporte à toi et surtout à tes utilisateurs et ce que ça vous coûte (à toi et - là encore - à tes utilisateurs).


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1145782
darkkrab
Posté le 10-07-2005 à 22:13:49  profilanswer
 

Je sais que je dois désactiver la navigation précédant et suivant, de toute façon, un site bien conçu, n'en a pas besoins. En passant, avant qu'on me fasse des reproches, je sais que certaines personnes aiment bien ces fonctions (précédant et suivant).

n°1145783
masklinn
í dag viðrar vel til loftárása
Posté le 10-07-2005 à 22:16:26  profilanswer
 

darkkrab a écrit :

un site bien conçu, n'en a pas besoins.


 [:f@bek] WTF [:mlc]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1145961
FlorentG
Unité de Masse
Posté le 11-07-2005 à 09:24:20  profilanswer
 

darkkrab a écrit :

Je sais que je dois désactiver la navigation précédant et suivant, de toute façon, un site bien conçu, n'en a pas besoins.


MAMANNNNNNNNN [:alph-one]

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Problème avec le chargement des iframes.

 

Sujets relatifs
Problème de onclick sous IEProblème d'espacement
Problème d'affichage[PHP] Probleme de sessions
Problème dans mon formulaireproblème de lien dans une pop up
problème avec code d'un menu horizontal type sliderProblème d'incompatibilité de type (erreur 13)
probleme de requte d insertion[java & xml] problème d'écriture de ° dans un xml
Plus de sujets relatifs à : Problème avec le chargement des iframes.


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR