javascript - Làm thế nào để nhấp qua một đối tượng fabricjs để chọn đối tượng bên dưới nó (không sử dụng thuộc tính evented)
Làm thế nào để bạn làm cho một đối tượng fabricjs 'khóa' sao cho:
- Nó không thể chọn được (obj.selectable=false)
- Cho phép sự kiện 'mousedown' cho nhấp chuột phải (obj.evented phải là true)
- Không có trạng thái/sự kiện hover (chuột không phát hiện đối tượng này khi di chuột hoặc thay đổi con trỏ)
- Cho phép chuột nhấp vào các đối tượng bên dưới nó (chuột có thể truy cập các đối tượng thông qua nó)
Tôi đã cố gắng tìm kiếm mã xử lý thuộc tính 'evented' nhưng tôi không thể tìm thấy nó trong mã nguồn. Thuộc tính evented thực sự làm cho đối tượng trở nên trong suốt (tức là có thể nhấp qua nó), nhưng lại loại bỏ sự kiện 'mousedown'.
Điều này là cần thiết trong tình huống của tôi, nơi tôi cần triển khai một menu ngữ cảnh với tính năng khóa/mở khóa đối tượng. Nếu đối tượng bị khóa, bạn vẫn cần có khả năng nhấp chuột phải vào nó để hiển thị menu ngữ cảnh một lần nữa để bạn có thể mở khóa nó. Ngoài ra, khi bị khóa, bạn vẫn cần có khả năng truy cập và nhấp vào các đối tượng bên dưới nó.
Fabricjs 3.6.6
Chỉnh sửa: Tôi được biết rằng điều này không khả thi ngay từ đầu bởi Fabric và cần phải viết một số mã tùy chỉnh để thêm khả năng này, theo như: https://github.com/fabricjs/fabric.js/issues/6734