2011-08-24 33 views
5

Có cách nào để tạo văn bản svg có thể chỉnh sửa trong Raphaël JS như được mô tả trong Thông số SVG 1.2 (http://www.w3.org/TR/2004/WD-SVG12-20040226/#text-edit) không?Văn bản có thể chỉnh sửa trong Raphaël

textelement.attr("editable", "true"); 

không thêm có thể chỉnh sửa thuộc tính đến textelement như tôi đã mong đợi.

Nếu không có cách nào tôi đoán tôi sẽ phải làm việc với các văn bản html lơ lửng…

+0

Bạn cần hỗ trợ những trình duyệt nào? –

+0

Tất cả các trình duyệt mà Raphaël hỗ trợ, nhưng tôi đoán không có giải pháp nào cho nên tôi sẽ thay thế tất cả các yếu tố văn bản svg bằng đầu vào html –

+0

Bạn có thể tạo hộp chỉnh sửa nổi khi ai đó nhấp vào văn bản và sau đó thay thế văn bản bằng mới được nhập. Hoặc yêu cầu Dmitry thực hiện nó :-) –

Trả lời

2

Raphael không phải là triển khai SVG 100%. Nó chỉ sử dụng SVG & VML làm cơ sở. Do đó, một số thứ có thể hoạt động, trong khi những thứ khác không hoạt động như bạn mong đợi và đôi khi không làm việc gì cả.

+2

Tôi chỉ muốn đảm bảo rằng không có khả năng thay đổi tất cả các yếu tố văn bản svg của tôi thành các phần tử html tại thời điểm này của dự án sẽ tốn khá nhiều thời gian –

3

Đặc điểm kỹ thuật bạn liên kết đến là bản nháp đang hoạt động (công việc đang tiến hành, có thể thay đổi). Tuy nhiên, SVG Tiny 1.2 spec không có gần như là same thing, và nó là một Khuyến nghị w3c. Tất nhiên điều đó không kỳ diệu làm cho mọi thực hiện làm những gì nó nói, nhưng nó ít nhất là ổn định.

Nếu bạn đang tìm kiếm triển khai hỗ trợ 'editable' trên các yếu tố văn bản svg, thì Opera là một ví dụ.

+2

Tôi đang tìm một giải pháp dựa trên Raphaël như tất cả các yếu tố văn bản của tôi đã được sáng tác theo cách đó –

+0

Bạn có thể sử dụng 'textelement.node.setAttribute (" editable "," simple ")' giả định textelement là một đối tượng Element Raphaël. Nhưng điều đó chỉ giúp bạn cho đến nay, vì vậy có, nói chung bạn sẽ phải đi cho các yếu tố html nếu bạn muốn nó làm việc crossbrowser. –

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