【问题标题】:Call Resize method only when resize is completed in Angular Js Resizable仅在 Angular Js Resizable 中完成调整大小时调用 Resize 方法
【发布时间】:2017-04-12 14:27:28
【问题描述】:

我使用了一个指令,它调用了一个返回一些值的方法,该方法运行良好。但我的问题是它反复调用它,我想要的是它应该只在调整大小完成时才调用该方法。我采用了这个代码形式

https://codepen.io/fabiobiondi/pen/pvJrBE

app.directive('resizable', function () {
return {
    restrict: 'A',
    scope: {
        callback: '&onResize'
    },
    link: function postLink(scope, elem, attrs) {
        elem.resizable();
        elem.on('resize', function (evt, ui) {
            scope.$apply(function () {
                if (scope.callback) {
                    scope.callback({ $evt: evt, $ui: ui });
                }
            })
        });
    }
};
})

<div resizable on-resize="resize($evt, $ui)" class="box">
     Resizable Div
</div>

注意:我不能调用 .click() 事件或使用超时操作的东西。其次,我有大约 150 个可以调整大小的 div,因此也不能使用 ID。

提前致谢

【问题讨论】:

标签: javascript jquery html css angularjs


【解决方案1】:

使用 resize-stop 事件。

 elem.on('resizestop', function (evt, ui) {
        scope.$apply(function () {
            if (scope.callback) {
                scope.callback({ $evt: evt, $ui: ui });
            }
        })
    });

【讨论】:

    猜你喜欢
    • 2011-07-02
    • 2011-05-16
    • 2012-11-30
    • 1970-01-01
    • 2011-02-20
    • 1970-01-01
    • 2011-01-04
    • 2013-04-22
    • 1970-01-01
    相关资源
    最近更新 更多