2013-06-18 28 views
6

Tôi đang cố gắng sử dụng các sự kiện chạm với các đối tượng Createjs/Easeljs. Ví dụ, tôi đang cố gắng đính kèm một sự kiện touchstart và touchmove bằng cách sử dụng addEventListener.Sử dụng các sự kiện chạm với Createjs/Easeljs

Touchstart và mousedown dường như hoạt động: Tôi đang sử dụng trình duyệt và thiết bị cảm ứng để kiểm tra và có vẻ như hoạt động trong cả hai trường hợp.

Tuy nhiên, mousemove và touchmove dường như không hoạt động. Tôi mặc dù đó là vì tôi đã xóa phương pháp stopPropagation và ngăn chặnDefault, nhưng tôi thấy rằng Lanny McNie đã viết rằng không cần phải làm điều đó trong CreateJS 1.

Tôi không thể hiểu tại sao nó không hoạt động.

Đây là mã của tôi: http://pastebin.com/pqxWLNKG

trọng.

+0

Giả sử nó được bật chính xác, tôi khuyên bạn nên đặt điểm ngắt trong mã cụ thể của thiết bị thích hợp và xem đó có phải là vấn đề về trình duyệt hay không. – WiredPrairie

+0

@WiredPrairie, tôi ước tôi có thể, tôi nghĩ rằng giao diện điều khiển gỡ lỗi từ xa chưa được bật. – Cod1ngFree

+0

Có thể thêm một số đăng nhập thay vào đó? Bạn đang kết nối thiết bị nào? – WiredPrairie

Trả lời

11

Bạn có thể sử dụng lớp cảm ứng đi kèm với EaselJS để bật đa chạm - chuyển thành sự kiện EaselJS mousedown/mousemove bình thường. Xem bản demo DragAndDrop: http://www.createjs.com/demos/easeljs/draganddrop

createjs.Touch.enable(stage); 

Chúc mừng.

+0

cảm ơn rất nhiều. Có cách nào để thay thế onPress, onMouseMove, onMouseOver và onMouseOut bằng addEventListener Nếu tôi tạo createjs.Touch.enable (stage); Hoặc lớp Touch chỉ cho phép chạm đa chạm cho các phương thức onAction đó? – Cod1ngFree

+0

Lớp cảm ứng chỉ hỗ trợ các tương tác hiện có. Các callback onAction đều bị phản đối - mô hình sự kiện được khuyến khích! – Lanny

+0

Điều này thật tuyệt vời! Cho đến khi tôi thấy điều này, tôi đã cố gắng sử dụng fastclick.js và không thể hoàn thành những gì tôi đang tìm kiếm. Cảm ơn! –