Angularjs与packery.js可拖动

时间:2017-01-25 06:26:30

标签: javascript jquery html angularjs

我能够根据Angularjs with Packery.js中提供的解决方案让Angularjs中的packery.js库工作

HTML

<div class="wrapper">
    <div ng-repeat="item in test" danny-packery>
        {{item.name}}
    </div>
</div>

JavaScript:

var dannyPackery = app.directive('dannyPackery', ['$rootScope', function($rootScope) {
    return {
        restrict: 'A',
        link: function(scope, element, attrs) {
            console.log('Running dannyPackery linking function!');
            if($rootScope.packery === undefined || $rootScope.packery === null){
                console.log('making packery!');
                $rootScope.packery = new Packery(element[0].parentElement, {columnWidth: '.item'});
                $rootScope.packery.bindResize();
                $rootScope.packery.appended(element[0]);
                $rootScope.packery.items.splice(1,1); // hack to fix a bug where the first element was added twice in two different positions
            }
            else{
                $rootScope.packery.appended(element[0]);
            }
            $rootScope.packery.layout();
        }
    };
}]);

如何将可拖动选项添加到上面的代码中?这里提供了可拖动选项的jquery代码http://packery.metafizzy.co/draggable.html。任何评论都表示赞赏

1 个答案:

答案 0 :(得分:1)

我最终使用this库,它运行正常。