2014-09-07 23 views
6

Tôi mới sử dụng AngularJs nên tôi cần thực hiện như sau:Làm thế nào để thực hiện hoạt ảnh jQuery trong AngularJs như mờ dần và mờ dần

Tôi có nút div và nút, tôi muốn khi tôi nhấp vào nút thực hiện cuộc gọi ajax và khi tôi hoàn thành, tôi muốn làm:

  1. Xóa div.
  2. Hoặc thêm mới.

Tôi muốn tìm hiểu cách thực hiện cả hai (không phải với cùng một cú nhấp chuột khóa học) với hoạt ảnh jQuery (slideUpslideDown).

+0

Heres một bài viết tốt về ng-Animate - http://www.yearofmoo.com/ 2013/08/remastered-animation-in-angularjs-1-2.html – Dylan

+0

Tôi đang đọc nó ngay bây giờ, chưa hoàn thành nó, nhưng tôi tự hỏi tại sao nó có một chút phức tạp để làm hình ảnh động trong Angular, có thể có một cách dễ dàng tôi không biết (ngoài CSS, bởi vì nó không được hỗ trợ trong tất cả các trình duyệt). – Dabbas

Trả lời

2

Bạn có thể sử dụng ngShow để thực hiện các thao tác sau jsfiddle dựa trên góc cạnh.

Mã html:

<div ng-app="App"> 
    Click me: <input type="checkbox" ng-model="checked"><br/> 
    <div class="check-element animate-show" ng-show="checked"> 
     <span class="icon-thumbs-up"></span> I show up when your checkbox is checked. 
    </div> 
    <div class="check-element animate-show" ng-hide="checked"> 
     <span class="icon-thumbs-down"></span> I hide when your checkbox is checked. 
    </div> 
</div> 

Các phong cách CSS

.animate-show.ng-hide-add, 
.animate-show.ng-hide-remove { 
    -webkit-transition:all linear 0.5s; 
    -moz-transition:all linear 0.5s; 
    -o-transition:all linear 0.5s; 
    transition:all linear 0.5s; 
    display:block!important; 
} 

.animate-show.ng-hide-add.ng-hide-add-active, 
.animate-show.ng-hide-remove { 
    line-height:0; 
    opacity:0; 
    padding:0 10px; 
} 

.animate-show.ng-hide-add, 
.animate-show.ng-hide-remove.ng-hide-remove-active { 
    line-height:20px; 
    opacity:1; 
    padding:10px; 
    border:1px solid black; 
    background:white; 
} 

.check-element { 
    padding:10px; 
    border:1px solid black; 
    background:white; 
} 

Và cuối cùng là mã JavaScript, đừng quên để bao gồm các thư viện angular.jsangular-animate.js

angular.module('App', ['ngAnimate']); 

tôi hy vọng nó sẽ giúp bạn;)

Alternative-2 Bạn cũng có thể làm phim hoạt hình sử dụng javascript: -

myModule.animation('fade', function() { 
    return { 
    setup : function(element) { 
     element.css({'opacity': 0}); 
    }, 
    start : function(element, done, memo) { 
     element.animate({'opacity': 1}, function() { 
     done(); 
     }); 
    } 
    }; 
}); 

Follow này link- http://www.yearofmoo.com/2013/04/animation-in-angularjs.html#how-to-use-animations-in-angularjs

+0

Điều này rất hữu ích nhưng tôi có phải sử dụng hoạt ảnh CSS không? nếu một số trình duyệt không hỗ trợ nó thì sao? Không có cách nào để làm show \ ẩn bằng cách sử dụng slideDown \ slideUp trong thư viện jQuery (có thể những người được thực hiện trong jquery lite bên trong Angular) ..? – Dabbas

+1

Bạn có thể xác định mô-đun hoạt hình của riêng mình nếu bạn muốn sử dụng javascript. Đã cập nhật câu trả lời. – pankaj

+0

Tôi bao gồm 'AngularJs v1.2.23' và 'angular-animate.min.js' trong trang của tôi và thử liên kết này đề xuất, hiển thị \ hide đang hoạt động nhưng không có hoạt ảnh, điều gì có thể là vấn đề? – Dabbas

Các vấn đề liên quan