Tôi đang làm việc trên một số hoạt ảnh và đang sử dụng thư viện jQuery.Làm thế nào người ta có thể tạo hiệu ứng "mảnh vụn bay" với jQuery?
Một trong các phương pháp của tài sản là fly()
, có nghĩa là để bay ra khỏi phần tử gốc có cha mẹ chỉ phát nổ. Nó sẽ trông giống như các mảnh vụn bay, tức là nó bay lên và đi và sau đó không chịu được lực hấp dẫn và rơi. Example.
Đây là phương pháp của tôi cho đến nay ...
var parent = this.element.parent(),
direction = this.element.position().left < parent.width()/2 ? '-' : '+';
this.element.animate({
left: direction + '=300',
top: '-=200'
}, duration);
Điều này rõ ràng không nhìn vào tất cả như mảnh vụn bay, vì nó chỉ di chuyển lên và đi. Biến số direction
xác định cách thức mà phần tử sẽ bay. Bởi vì mỗi phần tử được định vị tương đối với bố mẹ của nó, các phần tử ở phía bên tay trái di chuyển sang trái và ngược lại.
Tôi không muốn triển khai một công cụ vật lý chính thức như Box2D.
Tôi biết những gì mã của tôi về cơ bản nên làm, mà tôi tin là ...
- Bay elment lên (âm
top
) và theo hướng thiết lập (tiêu cực hay tích cựcleft
), với một số mục nát giá trị để mô phỏng mất chuyển động ngang do kháng gió vv và mất chuyển động thẳng đứng do trọng lực. - Lực hấp dẫn sẽ phát triển mạnh hơn ở một giai đoạn nào đó so với lực lên của nguyên tố từ vụ nổ, trong trường hợp đó phần tử sẽ cần rơi.
Tôi thực sự không biết cách tiếp cận vấn đề này. Tôi đã hy vọng tôi có thể tận dụng jQuery của animate()
, nhưng tôi không biết để kết hợp một giá trị phân rã.
Cách tốt nhất để tạo hiệu ứng này là gì?
Bạn chỉ cần một hoạt ảnh mảnh vụn cho kẹo mắt, hay nó phải được tính toán chính xác? Tôi thấy rằng việc sử dụng các giá trị ngẫu nhiên thực sự có thể làm cho nó thực tế. http://jsfiddle.net/minitech/fSaGk/ – Ryan
@minitech: Chỉ kẹo mắt. Tôi sẽ xem nếu tôi có thể fiddle với fiddle đó để làm việc trong dự án của tôi. Cảm ơn. – alex
@minitech Đó là một điều thú vị, tôi sẽ nói! –