2010-07-11 7 views
12

Je crée une application de diagramme dans laquelle je cache et montre quelques éléments par ex.Comment savoir si l'objet raphael est caché?

var c = paper.circle(10, 10, 10); 
c.hide() 

var c2 = paper.circle(10, 10, 10); 
c2.show() 

Maintenant, je veux agir sur de telles formes, par ex. calculer la boîte de délimitation, etc, mais je ne suis pas capable de trouver comment obtenir si la forme est cachée ou non? Y at-il quelque chose comme ça shape.is_visible() ou shape.attr ('visible')

+1

cela devrait vraiment être dans le api raphael, ne peut pas croire que nous devons mettre en œuvre nous – chrismarx

Répondre

17

Je pris un coup d'œil à la documentation et le code source et cuisinais cette place (non testé):

Raphael.el.is_visible = function() { 
    return (this.node.style.display !== "none"); 
} 

appel comme suit:

var c = paper.circle(10, 10, 10); 
c.hide(); 
if (c.is_visible()) 
    alert("Visible"); 
else 
    alert("Invisible"); 
+1

+1 pour faire exactement ce que je fais;) Raphael.el.is_hidden = function() { Renvoie this.node.style.display == 'none' }; –

+1

Belle solution, fonctionne vraiment dans mon cas aussi. –

Questions connexes