2016-05-13 1 views
1

вот директива angularJS с использованием jquery UI. Я хочу установить максимальную ширину элемента, который может быть изменен в пределах функции изменения размера. Как это возможно?угловая директива js для изменения размера с помощью jquery ui не может установить максимальную ширину

app.directive('resizable', function() { 

     return { 
      restrict: 'A', 
      scope: { 
       callback: '&onResize' 
      }, 
      link: function postLink(scope, elem, attrs) { 
       elem.resizable({ grid:200, handles: 'e,w'}); 
       elem.on('resize', function (evt, ui) { 


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


            //here is where I want to set maximum width 


           } 
          }) 



       }); 


      } 
     }; 
    }); 

ответ

1

По API docs вы просто должны установить maxWidth вариант:

$(".selector").resizable({ 
    maxWidth: 300 
}); 

Вы также можете назвать это динамически:

$(".selector").resizable("option", "maxWidth"); 

дело в том, если вы называете его от изменения размера обработчик событий, я думаю, что изменение повлияет только на следующий триггер.

+0

да мы можем установить максимальную ширину как этот. но мне нужно, чтобы я хотел установить максимальную ширину динамически в пределах функции изменения размера. –

+0

ОК, поэтому ПОЧЕМУ вы хотите это сделать, потому что это кажется немного опасным ..? – n00dl3

+0

Я хочу получить ширину элемента от объекта ui, например ui.size.width, и в соответствии с этим значением мне нужно изменить максимальную изменяемую ширину. –

Смежные вопросы