begin process at 2012 05 29 21:40:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Divers

 > 

probleme variable


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme variable

dimanche 22 novembre 2009 à 16:13:56 | probleme variable

sheik5757




Bonjour je sollicite votre aide car impossible d'utiliser ce code :

function minimize_fenetre(fenetre) {
addcell(fenetre);
fenetre.style.visibility = "hidden";
}

function addcell(fenetre) {
fenetre1 = fenetre;
var tbl = document.getElementById("menubar");
var lastRow = tbl.rows.length;
var row = tbl.rows[0];
var cell = row.insertCell(0);
cell.innerHTML = '<table border="0" width="66" height="53" cellpadding="0" cellspacing="0" background="system/window-minimized.png" onclick="restore_win(\''+fenetre+'\')"><tr><td align="center" class="menubaritemtext" href="">'+fenetre.className+'</td></tr></table>';
cell.fenetre = "menubaritem" + fenetre;
}

function restore_win(fenetre) {
fenetre.style.visibility = "visible";
}





tous marche jusqu'a restore_win : la variable fenetre ne pointe plus vers rien !

merci d'avance )= (je n'etais pas sur de la categorie alors j'ai posté ici =s )
dimanche 22 novembre 2009 à 16:47:06 | Re : probleme variable

Bul3

Membre Club
Bonjour,
certes, certes, mais ces fonctions sont appelées comment ?
et, au 1er coup d'oeil pas mal d'imprécisions !
_ fenetre.style.... ça doit s'adresser à un élément html
_ cell.fenetre
???? ça n'existe pas ça
... pas regardé beaucoup plus loin...
Cordialement [mon Site] [M'écrire] Bul
dimanche 22 novembre 2009 à 16:58:40 | Re : probleme variable

sheik5757

Oui désolé....
Enfait c'est appelé par la méthode onclick
L'objet fenêtre est celui créer lors de l'apelle de la finction mere (fenêtre.style marche pour minimize mais plus dans restore) et cell est un objet créer juste au dessus (non?) Voila j'espere que c'est assez precis maintenant =]
lundi 23 novembre 2009 à 09:07:13 | Re : probleme variable

Bul3

Membre Club
l'important n'est pas par qui c'est appelé
mais comment ! le paramètre transmis est
important malgré tout !
et... vous avez corrigé ce que je signalais ?
lundi 23 novembre 2009 à 16:31:27 | Re : probleme variable

Zobibol

Membre Club
Bien le bonjour
je suis d'accord avec Bul pour le coup ce serait super sympas d'avoir un exemple d'appel à la méthode minimize_fenetre (encore du AngloFrançois ???)
Car:
  • Soit on lui passe le contrôle ie:
    Code Javascript :
    minimize_fenetre (document.getElementById('coincoinMafenêtre"))
    et dans ce cas, en effet, restore_fenetre ne fonctionnera pas : lors de l'appel on lui passe un objet HTML (fenetre) entre quotte !!!
  • Soit on lui passe l'identifiant de l'objet et dans ce cas, plus rien ne fonctionne ;o)

    exemple avec l'identifiant:
    Code Javascript :
    function minimize_fenetre(fenetreId) {
    var fenetre = document.getElementById(fenetreId);
    addcell(fenetre);
    fenetre.style.visibility = "hidden";
    }
    
    function addcell(fenetre) {
    fenetre1 = fenetre;
    var tbl = document.getElementById("menubar");
    var lastRow = tbl.rows.length;
    var row = tbl.rows[0];
    var cell = row.insertCell(0);
    cell.innerHTML = '<table border="0" width="66" height="53" cellpadding="0" cellspacing="0" background="system/window-minimized.png" onclick="restore_win(\''+fenetre.id+'\')"><tr><td align="center" class="menubaritemtext" href="">'+fenetre.className+'</td></tr></table>';
    cell.fenetre = "menubaritem" + fenetre;
    }
    
    function restore_win(fenetreId) {
    document.getElementById(fenetreId).style.visibility = "visible";
    }


    Mais sans plus de précision, on ne peut qu'extrapoler...


  • [o-_-o]
    lundi 23 novembre 2009 à 19:56:36 | Re : probleme variable

    sheik5757

    Hmmmm... lors de l'appel de la fonction j'envoie directement un div Enfin je n'ai pas le code sous la main pour le copier la je suis sur mon mobile :s
    Sinon j'ai resolu a moitier le problème en envoyant l'id directement. ...je dis à moitier car il bug beaucoup mais je pense (j'espère plutôt ) pouvoir me débrouiller seul ^^
    Et pour le nom minimize_fenêtre euhhh je ne saurais me défendre =p (c'est la faute du chien du voisin :x )
    lundi 23 novembre 2009 à 20:00:17 | Re : probleme variable

    sheik5757

    Euh dzl du double post euh je ne vois pas ce que bul voulais que je corrige.... et sur le coup sa le frappe (aïe).
    jeudi 26 novembre 2009 à 14:51:26 | Re : probleme variable

    Bul3

    Membre Club
    mais c'est terrible ça....
    directement un div ? mais ??? mais ???? comment !!!!
    vous ne croyez pas que nous montrer cet appel
    serait le plus simple ? ou alors c'est top secret ?
    et comme il y a d'autres erreurs : sont-elles
    rectifiées ???
    samedi 5 décembre 2009 à 09:21:41 | Re : probleme variable

    sheik5757

    Arf vraiment désolé mais je n'avais pas l'acces à un quelconque pc depuis ....
    Bref, je vais poster la fonction, et pour etre sur, je vais carrement poster fenetre.js . Le script à un peu changer depuis la derniere fois mais le principe et le meme. J'ai toujours le probleme de restoration de fenetre qui se fait une fois sur trois et j'en ai un nouveau : .content ne veut pas prendre la meme valeur de taille que son parent (fenetre).
    Voila le code : ( je sais c'est tres brouillon ) :
    Code Javascript :
    var zindex=0;
    var fenetre_deplacee=0;
    var fenetre_deplacee_difx=0;
    var fenetre_deplacee_dify=0;
    var count=0;
    
    function creer_fenetre(left,top,width,height, nom,page) {
            var fenetre = document.createElement("div");
            fenetre.className= "fenetre"; //donne un attribut class à cette div
    		fenetre.id = count;
            fenetre.style.left="30px"; //Modification de l'attribut left du style de notre div
            fenetre.style.top="30px";
    
    		fenetre.nom=nom;
    
    				
            count++;
    		var milieu = document.createElement("div");
            milieu.className="content";
    		
    		var haut = document.createElement("div");
            haut.className="drag";
    
    		var close = document.createElement("div");
            close.className="close";
    		addEvent(close,"click",function (event){fermer_fenetre(fenetre)});
    		var agrandir = document.createElement("div");
            agrandir.className="agrandir";
    		addEvent(agrandir,"click",function (event){agrandir_fenetre(fenetre)});
    		var minimize = document.createElement("div");
            minimize.className="minimize";
    		addEvent(minimize,"click",function (event){minimize_fenetre(fenetre)});
    		var haut2 = document.createElement("div");
    		haut2.innerHTML=nom;
    	close.innerHTML =	"X";
    		minimize.innerHTML = "_";
    		agrandir.innerHTML = "O";
    		
    haut.appendChild(close);
    		
    haut.appendChild(minimize);
    haut.appendChild(agrandir);		
    haut.appendChild(haut2);
    fenetre.appendChild(haut);
    fenetre.appendChild(milieu);
    
    document.body.appendChild(fenetre); //insère le tout dans notre document, dans le corps
    $("#"+fenetre.id).draggable({ handle: '.drag' });
    $("#"+fenetre.id).resizable();
    $("#"+fenetre.id+" .content").load(page);
            premier_plan(fenetre)
    		$("#"+fenetre.id).fadeOut(0,function(){
    		$("#"+fenetre.id).fadeIn("slow");
    
    
    
      });
    
    }
    
    function premier_plan(fenetre) {
            zindex++; //incrémente la variable globale
            fenetre.style.zIndex=zindex; //affecte sa valeur au z-index de la fenetre concernée
    }
    
    
    function arreter_deplacement() {
            fenetre_deplacee=0; 
    }
    
    
    function addEvent(obj,event,fct){
         if(obj.attachEvent)
            obj.attachEvent('on' + event,fct);
         else
            obj.addEventListener(event,fct,true);
    }
    
    function commencer_deplacement(ev,fenetre) {
            fenetre_deplacee=fenetre; //quelle fenêtre est en cours de déplacement
            old_mouseCoords=mouseCoords(ev); //position de la souris
            old_windowCoords=getPosition(fenetre); //position fenêtre
            //stocke les différences dans les variables globales
            fenetre_deplacee_difx=old_mouseCoords.x-old_windowCoords.x;
            fenetre_deplacee_dify=old_mouseCoords.y-old_windowCoords.y;
    }
    
    function mouseCoords(ev){
            if(ev.pageX || ev.pageY){
                    return {x:ev.pageX, y:ev.pageY};
            }
            return {
                    x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
                    y:ev.clientY + document.body.scrollTop  - document.body.clientTop
            };
    }
    
    function getPosition(e){
            var left = 0;
            var top  = 0;
            while (e.offsetParent){
                    left += e.offsetLeft;
                    top  += e.offsetTop;
                    e     = e.offsetParent;
            }
            left += e.offsetLeft;
            top  += e.offsetTop;
            return {x:left, y:top};
    }
    function fermer_fenetre(fenetre) {
    $("#"+fenetre.id).fadeOut("slow");
    
    
    
    }
    function deplacer_fenetre(ev) {
            if(fenetre_deplacee!=0) {
                    var souris=mouseCoords(ev);
                    fenetre_deplacee.style.left=(souris.x-fenetre_deplacee_difx)+'px'; //soustrait l'abscisse du curseur par rapport au coin gauche de la fenêtr
                    fenetre_deplacee.style.top=(souris.y-fenetre_deplacee_dify)+'px'; //ordonnée
            }
    }
    
    function agrandir_fenetre(fenetre) {
    if(fenetre.style.left != "0px") {
    
           $("#"+fenetre.id).animate( { width:"100%" }, { queue:false, duration:2000 } );
     $("#"+fenetre.id).animate( { height:screen.height-76 }, { queue:false, duration:2000 } );
    $("#"+fenetre.id).animate( { left:"0px" }, { queue:false, duration:2000 } );
    $("#"+fenetre.id).animate( { top:"0px" }, { queue:false, duration:2000 } );
    
    }
    else {
    
           $("#"+fenetre.id).animate( { width:"400px" }, { queue:false, duration:2000 } );
     $("#"+fenetre.id).animate( { height:"170px" }, { queue:false, duration:2000 } );
    $("#"+fenetre.id).animate( { left:"30px" }, { queue:false, duration:2000 } );
    $("#"+fenetre.id).animate( { top:"30px" }, { queue:false, duration:2000 } );
    
    
    
    }
    }
    
    
    function minimize_fenetre(fenetre) {
    addcell(fenetre);
    	$("#"+fenetre.id).hide("slow");
    
           $("#"+fenetre.id).animate( { visibility:"hidden" }, { queue:false, duration:2000 } );
    
    }
    
    function addcell(fenetre) {
    
       var tbl = document.getElementById("menubar");
       var lastRow = tbl.rows.length;
       var row = tbl.rows[0];
       var cell = row.insertCell(0);
       cell.innerHTML = '<table border="0" width="66" height="53" cellpadding="0" cellspacing="0" background="system/window-minimized.png" onclick="restore_win(\''+fenetre.id+'\')"><tr><td align="center" class="menubaritemtext" href="">'+fenetre.nom+'</td></tr></table>';
    	cell.fenetre = fenetre.id;
    }
    
    function restore_win(id) {
    	$("#"+id).show("slow");
    
           $("#"+id).animate( { visibility:"visible" }, { queue:false, duration:2000 } );
    
    	var tbl = document.getElementById("menubar");
    
    			tbl.rows[0].deleteCell(id);
    		
    	
    }
    
    

    samedi 5 décembre 2009 à 10:02:42 | Re : probleme variable

    Bul3

    Membre Club
    oulah.... y'a du "framework" la dessous ? :


    1 2

    Cette discussion est classée dans : function, variable, fenetre, var, tbl


    Répondre à ce message

    Sujets en rapport avec ce message

    Taille des images variable selon la taille de la fenetre ou la résolution [ par motenai ] Salut,En fait, j'aimerais trouver le moyen pour que mes images changent toutes seules de taille soit selon la résolution de l'écran soit selon la tail Eval [ par stephbb75 ] Salut tous,Une tit question sur eval.Voila ce que je veut faire :J'ai des variablesvar v1 = toto;var v2 = titi;...Et sur saissie d'un formulaire, je v transfert variable (et oui encore) [ par ALDOlivier ] Salut à tous,Bon je sais la question a eté posée un millier de fois au moins mais apres avoir lu pas mal de post, je ne comprend toujours pas (et oui rollover sonore [ par Wulfgar ] Bonjour, voilà j'essai de fair une rollover sonore sur une image a l'aide d'un code javascript que j'ai trouvé sur internet... Mais malheureusement Tableau 2D [ par malik7934 ] Hello, En deux mots: j'ai fais ça: http://noisy.ch/smilies/smilies2.html mais je n'y connais rien à Javascript (c'est pour un chat en php). J'ai modi Liste déroulante + input [ par JMO ] Bonjour, Je débute ce jour même sur java. Pour apprendre en douceur, j'essaie de me faire un annuaire téléphonique. Liste déroulante + avec un click, Variable [ par ImmortalPC ] Salut, Dans les question con j'aimerai la variable lol J'ai un super problème avec des variables : j'ai : var t1 = 'toto'; var t2 = 1; var test = 't'+ creer une variable dynamiquement [ par titimal2 ] bonjour à tous,ayant fais de nombreux forums, je n'ai toujours pas de reponse à ma question :JE VAIS ILLUSTER MON PROBLEME :j'ai ces variables :var md variable [ par tonytruand ] BonjourLa réponse est certainement toute bête, mais je ne m'en sors pas.Je me sers de XMLHTTPREQUEST pour extraire la source de fichiers; pour le nom scroll bar graphique modifié..comment en avoir plusieurs? [ par Le Zbire ] voici le codecode:Smart Scroller<script type="text/java


    Nos sponsors


    Sondage...

    Comparez les prix

    CalendriCode

    Mai 2012
    LMMJVSD
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   

    Consulter la suite du CalendriCode

    A découvrir



     
    Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
    CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
    CodeS-SourceS.com© est une marque déposée tous droits réservés

    Google Coop CodeS-SourceS Google Coop CodeS-SourceS
    Temps d'éxécution de la page : 0,468 sec (3)

    Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales