Limite de javascript

Signaler
Messages postés
79
Date d'inscription
vendredi 26 mai 2006
Statut
Membre
Dernière intervention
10 juillet 2008
-
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
-
Bonjour voici le code qui me cose du trouble

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>-)-)-)-)-) Naturel navigator (-(-(-(-(-</title>

<style type="text/css">

html, body {margin:0px; padding:0px; background:#FFF; font-family:verdana; font-size:12px;}
/* The header and footer */
.headfoot {display:block; height:50px; background:#FFF; text-align:center; padding:5px;}

/* This bit does all the work */
#container {position:relative; display:block; background:#def; border-left:200px solid #FFF;}
#inner { display:block; margin-left:-200px; padding:5px; height:auto;}
#left {float:left; position:relative; width:200px; left:0px;}
#center {margin-left:200px; position:relative; display:block; height:100%;}
.clear {clear:both;}

h1 {margin-top:-5px; font-size:23px;}
h2 {margin-top: 5px; padding-top:15px; font-size:20px;}
/* Just to extend each column */
#inner a:visited, a {color:#000; text-decoration:none; cursor:default;}
#inner a span {display:none;}
#inner a:active, #inner a:focus {color:#fff; text-decoration:none; background:transparent; cursor:default;}
#inner a:active span, #inner a:focus span {display:block;}

a:visited, a {text-decoration:underline; cursor:pointer;}
a:hover {text-decoration:none; cursor:pointer;}

em {font-weight:bold;}

.menuleft { display:block; margin:0; padding:0; list-style-type:none; position:relative; white-space:nowrap; z-index:1; }
.menuleft li { display:block; margin:0; padding:0; width:185px; clear:left;}
.menuleft a { display:block; height:18px; padding-top:2px; float:left; color:#339 ! important; background-color:#eff ! important; text-decoration:none; padding-left:10px; width:100%; margin-top:5px;}
.menuleft a:hover { color:#00c ! important; background-color:#def ! important }

#topcontrol {background-color:#def; height:30px; border-bottom:1px #000 solid; margin-bottom:15px;}
#bottomstatus {background-color:#def; height:30px; border-top:1px #000 solid; margin-top:15px;}
</style>

<!-- XML HTTP REQUEST -->

<script type="text/JavaScript">
var xhr = null;

function getXhr(){
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject){ // Internet Explorer
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else { // XMLHttpRequest non supporté par le navigateur
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
xhr = false;
}
}

/**
* Méthode qui sera appelée sur le click du bouton
*/

function menuleft(callcontent){

function style()
{
//cssstart='<style type="text/css"> #'
//idname=callcontent
//cssend="{ background-color:#def; } </style>"
document.getElementById(callcontent).style.backgroundColor=red;
//mixcss=cssstart+idname+cssend
//document.write(mixcss);
}

getXhr()
// On défini ce quon va faire quand on aura la réponse
xhr.onreadystatechange = function(){
// On ne fait quelque chose que si on a tout reçu et que le serveur est okif(xhr.readyState 4 && xhr.status 200){

document.getElementById("centercontent").innerHTML = xhr.responseText;
}
}

adressbase="sw.php?content="
call=callcontent
mix=adressbase+call
xhr.open("GET", mix,true);
xhr.send(null);
}

function teste(contentfull){
toptop='
[ Small]
'
bottombottom='
Status
'
}

if ( typeof( window[ 'callcontent' ] ) != "undefined" ) {
callcontent = "true"
}
else {
callcontent = "false"
}

function fill(callcontent){
return callcontent
}
ccontent = fill(callcontent);

switch(ccontent)
{
case "true":
toptop='
[# Small]
'
bottombottom='
Status
'
break
case "false":
toptop = '
NaturelNavigator

[# ]

<li>[# Overview]</li><li>[# Control Panel]</li><li>[# Documents]</li><li>[# Mail]</li><li>[# Web Sites]</li><li>[# Notes]</li>

[# BIG]'

bottombottom = '

} Alpha v. 0.1.1 {
Created by Boulay Desjardins, Jean-Nicolas [ jnbdz@hotmail.com ]. All rits reserve to Boulay Desjardins, Jean-Nicolas.
'

break
default:
toptop = '
NaturelNavigator

[# ]

<li>[# Overview]</li><li>[# Control Panel]</li><li>[# Documents]</li><li>[# Mail]</li><li>[# Web Sites]</li><li>[# Notes]</li>

[# BIG]'

bottombottom = '

} Alpha v. 0.1.1 {
Created by Boulay Desjardins, Jean-Nicolas [ jnbdz@hotmail.com ]. All rits reserve to Boulay Desjardins, Jean-Nicolas.
'

}

function startTime()
{
var today=new Date()
var h=today.getHours()
var m=today.getMinutes()
var s=today.getSeconds()
// add a zero in front of numbers<10
m=checkTime(m)
s=checkTime(s)
document.getElementById('txt').innerHTML= h+":"+m+":"+s
t=setTimeout('startTime()',500)
}

function checkTime(i)
{
if (i<10)
{i="0" + i}
return i
}

function windowload()
{
fill("false");
}

</script>
</head>

<body onload="windowload();">
<noscript>JavaScript must be enabled in order for you to use NaturelNavigator in standard view. However, it seems JavaScript is either disabled or not supported by your browser. To use standard view, enable JavaScript by changing your browser options, then [ try again]. To use NaturelNavigator basic HTML view, which does not require JavaScript, [?contenttype=html&lang=en&page=index click here].</noscript>

<script type="text/JavaScript">document.write(toptop); document.write(ccontent);</script>
<div style=" position:relative; background-color:#FFF; height:auto; width:auto; margin:5px;" id="centercontent"><h2>Welcome to your account.</h2><p>Please click here to no more about this system or to see wats new.</p><br /></div></div>
<script type="text/JavaScript">document.write(bottombottom);</script>

</body>

tout marche appare si le monde click Big sa fait rien pourquoi?

Merci pour votre aide.

</html>

13 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
B

onjour...

qu'est ce qui ne marche pas ????
si il s'agit de la fonction teste() et que son but est de

créer ou de modifier un
il faut utuliser...
  var Obj = document.getElementById('ID_du_DIV');
  Obj.innerHTML = "le texte à afficher";

ajouter du texte au document on peut faire la même chose...
  var Obj =document.body;



  Obj.innerHTML = "le texte à afficher";







Mais est ce bien le probléme ?...



;0)
Messages postés
79
Date d'inscription
vendredi 26 mai 2006
Statut
Membre
Dernière intervention
10 juillet 2008

Salut,

voici ce que jessais d'acomplire:

quand cette page ce load je veu que le menu et les bordure bleu apparaise.

après si on appuie sur BIG je veu que le menu et la bordure bleu sois remplacer.

Voici le code qui est supposer de faire tout sa

/******************
*   FULL SCREEN   *
*******************/   
           
           
    /* to created a default    */   
   
        function fill(callcontent){
        alert("fill function loaded");
alert("value of callcontent is " + callcontent);
        return (callcontent)
        }

        ccontent = fill(callcontent);
        alert("fill function loaded");
        alert("value of fill(callcontent) is " + ccontent);

switch(ccontent)
{
case "true":
  toptop=\'
[# Small]
\';
bottombottom=\'
Status
\';
  break   
case "false":
 toptop = \'
NaturelNavigator

[# ]

<li>[# Overview]</li><li>[# Control Panel]</li><li>[# Documents]</li><li>[# Mail]</li><li>[# Web Sites]</li><li>[# Notes]</li>

[# BIG]\';
       
bottombottom = \'

} Alpha v. 0.1.1 {
Created by Boulay Desjardins, Jean-Nicolas [ jnbdz@hotmail.com ]. All rits reserve to Boulay Desjardins, Jean-Nicolas.
\';

  break
}
           
/******************
* end FULL SCREEN *
*******************/

le problem ses quand on load la page les message alert me dise que callcontent = "false"

mais firefox dit que callcontent est non défini

merci de vautre aide.
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
B

onjour...






le problem ses quand on load la page les message alert me dise que callcontent = "false"
mais firefox dit que callcontent est non défini









il est préférable de déclarer les variables utilisées avant que le script ne les rencontre...
c'est plus propre et cela permet d'un coup d'oeil de savoir si
 - elle est globale, visible par toutes les fonctions
 - ou locale, visible par la fonction dans laquelle elle se trouve...

<SCRIPT TYPE="text/JavaScript">
  var callcontent;





  var ccontent;






  var xhr = null;

...la suite...

  /* to created a default    */  
  function fill(callcontent){
    alert("fill function loaded");
    alert("value of callcontent is " + callcontent);
    return (callcontent)
  }

  ccontent = fill(callcontent);
  alert("fill function loaded");
  alert("value of fill(callcontent) is " + ccontent);
...la suite ...

</SCRIPT>



;0)
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
bonjour,
   je ne vois pas clair ou quoi ?

function menuleft(callcontent)
{
  function style()
  {
  document.getElementById(callcontent).style.backgroundColor=red;
  ....

une fonction dans une fonction, ça fonctionne ?
red ? n'est pas une variable connue .... ( "red"; serait meilleur ? )
pas été plus loin, car si on copie pour essayer ==> 1 seule ligne ( illisible )

<hr />
cordialement   Bul   
Site
   
M'écrire
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
B

onjour...
une fonction dans une fonction ça fonctionne...

exemple d'utilisation

function Func_Hard( val_){
  var Result;

  function Hard_1(){
    ..un code hyper chiader...
     return( Result);
  }





  function Hard_2(){






    ..un autre code hyper chiader...







     return( Result);






  }
 
  if( val_< 0)




    Hard_1();
  else




    Hard_2();





}

peut être utile pour de la maintenance et de la clareté !!!



;0)
Messages postés
79
Date d'inscription
vendredi 26 mai 2006
Statut
Membre
Dernière intervention
10 juillet 2008

Sa a laire d'aider mais sa ne marche toujours pas. Voici l'adresse du site http://www.sitenetmedia.com/laboratoire/sw.php

Regarder si vous ne voyer pas se qui cloche car la je sais vraiment pas.

Merci de vautre aide.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
avec FF, regarder la console javascript
avec IE, activer le debugger et ça donne :
   <script type="text/JavaScript">document.write(toptop); document.write(ccontent);
   "toptop" non défini.
<hr />
cordialement   Bul  Site  M'écrire
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
à PetOleTeam,
   je n'avais jamais essayé une function dans une function.
   ( pas eu l'utilité ? )
   merci de nous avoir confirmé que ça baignait,
   ça peut servir.
<hr />
cordialement   Bul  Site  M'écrire
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
B

onjour...

to : The BULTEZ
message : merci pour le message subliminal

to : jnbdzjnbdz
message :

je viens de regarder le cade plus avant et j'ai une question principale

var callcontent;
...est initialisée comment, présence d'une FRAME ou autre ?

essaies avec
var callcontent= "false";
et
var callcontent= "true";

...cette variable est elle un booleen ou une chaine car ATTENTION "false" est différent de false...

pour la suite à suivre....


;0)
Messages postés
79
Date d'inscription
vendredi 26 mai 2006
Statut
Membre
Dernière intervention
10 juillet 2008

Salut...

Pour ta questions je n'utilise pas de frame.

Il l'affiche grace a sa:

<script type="text/JavaScript">document.write(toptop); document.write(ccontent);</script>
et
<script type="text/JavaScript">document.write(bottombottom);</script>

la le problème ses que quand jappuie sur
href="#" onclick="fill('true');">BIG</a>

sa menvoie que callcontent = true mais le probleme ses que sa fait rien d'autre ses suposser changer le layout

sérieu je comprend plus rien

merci pour votre aide.
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
ses suposser changer le layout

de quel layout parle t-on... le
? et avec quoi ?



;0)
Messages postés
79
Date d'inscription
vendredi 26 mai 2006
Statut
Membre
Dernière intervention
10 juillet 2008

<script type="text/JavaScript">document.write(toptop); document.write(ccontent);</script>
et
<script type="text/JavaScript">document.write(bottombottom);</script>

le layout apparais grace a ses deux script.

si false

toptop = \'
NaturelNavigator

[# ]

<li>[# Overview]</li><li>[# Control Panel]</li><li>[# Documents]</li><li>[# Mail]</li><li>[# Web Sites]</li><li>[# Notes]</li>

[# BIG]\';
       
bottombottom = \'

} Alpha v. 0.1.1 {
Created by Boulay Desjardins, Jean-Nicolas [ jnbdz@hotmail.com ]. All rits reserve to Boulay Desjardins, Jean-Nicolas.
\';

si vrais

  toptop=\'
[# Small]
\';
bottombottom=\'
Status
\';

merci de ton aide.
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
Il semble plus simple de tout mettre dans le document et de masquer/Afficher ce qui doit l'être suivant le click...

Initialisation...
SI FALSE




  // le DIV englobant de l'écran si false





  var Html_1 = '
'




  // le DIV englobant de l'écran si true





  var Html_2 = '




position:absolute;top:0px;left:0px;



visibibility:hidden">'






SI TRUE






  var Html_1 = '




position:absolute;top:0px;left:0px;



visibibility:hidden">'
 



var Html_2 = '




position:absolute;top:0px;left:0px;



visibibility:visible">'

top_1 =


'
<h1 style="float:left;" ...etc...

onclick ="fill(true);">BIG
';




bottom_1  = '
...etc...
onclick ="fill(false);">Small
';


bottom_1 += '<\/DIV
>'; // fermeture DIV_FALSE





top_2 =


  '
[# Small]
';
bottom_2  ='
Status
';



bottom_2 += '<\/DIV
>'; // fermeture DIV_TRUE






Ecriture
dans le document...


<script type ="text/JavaScript">



//-- Ecriture du DIV_FALSE

document.write(Html_1);



document.write(top_1);
document.write(ccontent);


document.write(bottom_1);








//-- Ecriture du DIV_TRUE




document.write(Html_2);



document.write(top_2);


document.write(bottom_2);



</script>



et la fonction fill() devient
//---------------
function fill(flag_){
  var Obj_1 = document.getElementById("DIV_FALSE");


  var Obj_2 = document.getElementById("DIV_TRUE");
  if( flag_){
    Obj_1.style.visibility ="hidden";


    Obj_2.style.visibility ="visible";
  }
  else{


    Obj_1.style.visibility ="visible";


    Obj_2.style.visibility ="hidden";


  }


}
















;0)