AngularJS Gridster, как узнать, какой виджет начал перетаскивать

Я хочу регистрировать запуск / остановку изменения размера / перетаскивания виджетов.

Я пытаюсь поставить атрибут тега (или имени) на то, что внутри <li> и получить их на перетаскивая событие начала / остановки.

Как я могу это сделать?

Мой код выглядит следующим образом: HTML:

<div id="widgets" class="gridster">
    <ul>
        <li data-row="1" data-col="1" data-sizex="1" data-sizey="1" class="yellow">
            <p style="white-space: pre;" name="Updates Widget">{{gridsterUpdates}}</p>
        </li>
        <li data-row="1" data-col="2" data-sizex="1" data-sizey="1">
            <div class="widget-container" ng-include="'widget-export.html'" tag="Export Widget"></div>
        </li>
        <li data-row="1" data-col="3" data-sizex="1" data-sizey="1">
            <div class="widget-container" ng-include="'widget-timeline.html'" tag="Timeline Widget"></div>
        </li>
        <li data-row="1" data-col="4" data-sizex="1" data-sizey="1">
            <div class="widget-container" ng-include="'widget-search.html'" tag="Search Widget"></div>
        </li>

        <li data-row="1" data-col="5" data-sizex="1" data-sizey="1">
            <div class="widget-container" ng-controller="FacetsCtrl" ng-include="'widget-facets.html'" tag="Facets  Widget"></div>
        </li>
    </ul>
</div>

контроллер:

var gridster;

    $(function() {

        gridster = $(".gridster ul").gridster({
            widget_base_dimensions: [402, 299],
            widget_margins: [0, 0],
            resize: {
                enabled: true
            },
            draggable: {
                start: function(e, ui, $widget) {
                    $scope.gridsterUpdates = "NAME SHOULD BE HERE" + 'started dragging. Start position: ' + ui.position.top + ' ' + ui.position.left + '\n' + ($scope.gridsterUpdates || '');
                    $scope.$apply();
                },

                drag: function(e, ui, $widget) {
                },

                stop: function(e, ui, $widget) {
                    $scope.gridsterUpdates = "NAME SHOULD BE HERE" + ' stopped dragging. Stop position: ' + ui.position.top + ' ' + ui.position.left + '\n' + ($scope.gridsterUpdates || '');
                    $scope.$apply();
                }
            }
        }).data('gridster');
    });

0 ответов

Другие вопросы по тегам