2010-07-11 2 views
12

Ich erstelle eine Diagramm-Anwendung, in der ich einige Elemente ausblenden und zeige, z.Woher weiß man, ob das Raphael-Objekt versteckt ist?

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

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

Jetzt möchte ich auf solche Formen z. Berechne Bounding Box usw., aber ich finde nicht, wie man es bekommt, wenn die Form versteckt ist oder nicht? Gibt es so etwas wie dieses shape.is_visible() oder shape.attr (‚sichtbar‘)

+1

dies sollte wirklich in dem raphael api sein, wir selbst nicht glauben haben es – chrismarx

Antwort

17

ich einen Blick auf die Dokumentation und den Quellcode nahm und gekocht diese nach oben (nicht getestet):

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

Anruf als folgt:

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

+1 genau implementieren zu tun, was ich tue;) Raphael.el.is_hidden = function() { Rückgabe this.node.style.display == 'none' }; –

+1

Nette Lösung, funktioniert wirklich in meinem Fall auch. –