Как установить ширину div с помощью ng-стиля
Я пытаюсь установить ширину div динамически с помощью ng-style
, но не применяет стиль. Вот код:
<div style="width: 100%;" id="container_fform" ng-controller="custController">
<div style="width: 250px;overflow: scroll;">
<div ng-style="myStyle"> </div>
</div>
</div>
Контроллер:
var MyApp = angular.module('MyApp', []);
var custController = MyApp.controller('custController', function ($scope) {
$scope.myStyle="width:'900px';background:red";
});
Что мне не хватает?
Ссылка на скрипт: Fiddle
Ответы
Ответ 1
Синтаксис ng-style
не совсем такой. Он принимает словарь ключей (имена атрибутов) и значения (значение, которое они должны принимать, пустая строка их отключает), а не только строку. Я думаю, что вы хотите это:
<div ng-style="{ 'width' : width, 'background' : bgColor }"></div>
И затем в вашем контроллере:
$scope.width = '900px';
$scope.bgColor = 'red';
Это сохраняет разделение шаблона и контроллера: контроллер хранит семантические значения, а шаблон сопоставляет их с правильным именем атрибута.
Ответ 2
ngStyle
принимает карту:
$scope.myStyle = {
"width" : "900px",
"background" : "red"
};
Fiddle