Tôi đang cố gắng có trình xử lý nhấp chuột phổ biến cho tất cả các phần tử tôi đang thêm vào canvas SVG. Nhưng tôi không thể ủy nhiệm người xử lý cho các thành phần mới được tạo ra.Tổ chức sự kiện trên các yếu tố SVG
Đây là mã tôi đã cố gắng để ủy, nhưng may mắn không
$("#floor").on('click','.drawnLine', function() {
//#floor is the SVG Element
//.drawnLine is the <line> element that is added dynamically
console.log($(this).data('index'));
});
Cập nhật: Mở hướng dẫn jQuery của .on()
nó được đề cập rằng
Lưu ý: được ủy sự kiện không hoạt động đối với SVG.
Vì vậy, bây giờ câu hỏi là giải pháp khác cho vấn đề này?
jQuery được thiết kế cho HTML DOM, tương tự nhưng không giống với DOM SVG.Những gì bạn đang cố gắng làm có lẽ không được hỗ trợ. (Tương tự, tôi cần thay thế một vài phương thức jQuery để thêm/xóa các lớp bằng các phiên bản tương thích SVG của riêng tôi trong một dự án trước đó.) Hy vọng rằng ai đó có thể đề xuất một sự thay thế tốt đẹp. –
[http://keith-wood.name/svg.html](http://keith-wood.name/svg.html) – Ohgodwhy
@Ohgodwhy, Tổ chức sự kiện cũng không hoạt động với thư viện đó. – Starx