2013-04-26 51 views
8

Tôi biết có rất nhiều trình soạn thảo văn bản phong phú ở đó có thể dễ dàng được chuyển sang góc và nhiều thảo luận về cách thực hiện việc này, nhưng tôi muốn tạo của riêng mình.Tạo trình soạn thảo văn bản phong phú AngularJS

Tôi có ý tưởng cơ bản xuống:

  • tạo ra một vùng văn bản và xem các đầu vào và thực hiện một chức năng như những thay đổi đầu vào. Tôi quen thuộc với chỉ thị ngBindhtml, chỉ trong phạm vi mà tôi có thể áp dụng nó cho một phần tử.

Bất kỳ ý tưởng nào về cách tôi có thể tạo hàm sẽ hiển thị văn bản thuần túy thành html?

+2

Hầu hết người chỉnh sửa ẩn vùng văn bản và hiển thị dữ liệu đang được nhập vào div. Một cách tuyệt vời để bắt đầu là xem xét một số ví dụ thực sự đơn giản và sau đó tạo chỉ thị của bạn. –

+1

Đó là giải pháp đơn giản để giải quyết vấn đề dường như phức tạp – richbai90

+0

Bạn cũng sẽ thấy điều này cần thiết: http://stackoverflow.com/questions/263743/how-to-get-caret-position-in-textarea –

Trả lời

11

Tôi đã thử trước nhưng kết thúc bằng cách sử dụng textAngular.

Về cơ bản tôi đã thay thế vùng văn bản bằng iframe, tương tự như cách tinyMCE thực hiện.

contenteditable trên một phần tử cho phép bạn thay thế vùng văn bản và ghi trực tiếp trên div. Bạn sẽ chèn tất cả các phần tử html như tiêu đề và văn bản theo cách này. Bạn sẽ phải xử lý vị trí con trỏ trên văn bản, áp dụng kiểu dựa trên các nút và lựa chọn văn bản, v.v.