Bạn cần thêm directive để thực hiện việc này.
Vì vậy, chỉ với jQuery, bạn phải:
JS
$('#source').quicksand($('#destination li'));
HTML
<ul id="source">
<li data-id="iphone">iOS</li>
<li data-id="android">Android</li>
<li data-id="winmo">Windows Phone 7</li>
</ul>
<ul id="destination" class="hidden">
<li data-id="macosx">Mac OS X</li>
<li data-id="macos9">Mac OS 9</li>
<li data-id="iphone">iOS</li>
</ul>
Với góc bạn có thể làm:
JS
yourApp.directive('jqQuicksand', function(){
var linkFn = function(scope,element,attrs){
// element here = $(this)
// bind your plugin or events (click, hover etc.) here
element.quicksand($(attrs.jqQuicksand));
}
return {
restrict:'A',
scope: {},
link: linkFn
}
});
HTML
<ul data-jq-quicksand="#destination li" id="source">
<li data-id="iphone">iOS</li>
<li data-id="android">Android</li>
<li data-id="winmo">Windows Phone 7</li>
</ul>
<ul id="destination" class="hidden">
<li data-id="macosx">Mac OS X</li>
<li data-id="macos9">Mac OS 9</li>
<li data-id="iphone">iOS</li>
</ul>
Lưu ý, đây là chưa được kiểm tra nhưng phải ok.
như với bất kỳ plugin thao tác DOM nào khác, cần phải khởi chạy nó trong chỉ thị góc. Quấn mã của bạn trong '$ timeout' nếu góc sẽ tạo các phần tử' LI' như với 'ng-repeat' – charlietfl
@charlietfl, cái gì? – arg20
'what' là gì? – charlietfl