2010-07-11 24 views
12

Tôi đang tạo một ứng dụng sơ đồ trong đó tôi ẩn và hiển thị một vài thành phần, ví dụ:Làm cách nào để biết đối tượng raphael có bị ẩn không?

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

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

Bây giờ tôi muốn thực hiện các hình dạng như vậy, ví dụ: tính toán giới hạn hộp vv nhưng tôi không thể tìm thấy làm thế nào để có được nếu hình dạng được ẩn hay không? Có cái gì đó như shape.is_visible này() hoặc shape.attr ('nhìn thấy')

+1

này thực sự nên được trong api raphael, không thể tin rằng chúng ta phải thực hiện nó mình – chrismarx

Trả lời

17

tôi đã xem xét mã tài liệu và nguồn và nấu chín này lên (chưa được kiểm tra):

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

Gọi như sau:

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

1 cho chính xác làm những gì tôi đang làm;) Raphael.el.is_hidden = function() { trả lại this.node.style.display == 'none' }; –

+1

Giải pháp tốt, thực sự hoạt động trong trường hợp của tôi. –

Các vấn đề liên quan