2014-07-27 6 views
0

Je veux utiliser KineticJs, et je suis en train d'écrire une fonction qui est comme position:absolute;right:...px pour le groupe d'éléments() avec kineticJS, je fais comme ceci:Réglage de la largeur du groupe en fonction du contenu

right : function(dist){ 
     this.x(250-this.width()-dist); 
    } 

(250 est le largeur du conteneur) Mais la largeur de l'élément group est 0, même si j'utilise group.add (image). Je voudrais savoir s'il y a moyen d'avoir la largeur du groupe, dans ce cas ce sera la largeur de l'image dans le groupe. Cordialement

Répondre

0

Vous pouvez créer une fonction qui redimensionne le groupe en fonction de ses tailles pour enfants:

Exemple de code et une démonstration: http://jsfiddle.net/m1erickson/3bz2L/

function resizeGroupToContents(group){ 
    var width=0; 
    var height=0; 
    group.getChildren().each(function(node){ 
     var right=node.x()+node.width(); 
     if(right>width){width=right;} 
     var bottom=node.y()+node.height(); 
     if(bottom>height){height=bottom;} 
    }); 
    group.width(width); 
    group.height(height); 
    layer.draw(); 
} 
Questions connexes