Аз съм нов с помощта на AngularJS.
Умея да изчислявам динамичната стойност, използвайки {{}}
но новият CSS не се заменя със стария.
<div class="progress-bar" role="progressbar" ng-style="width:{{survey.progressbar.width}}">
Когато използвам
style="width:{{survey.progressbar.width}}"
Получавам очаквани резултати в Chrome, но не и в IE11
Отговори:
0 за отговор № 1Това не е правилният начин за използване на ng-style
. използвайте го така.
<div class="progress-bar" role="progressbar" ng-style="{"width" : survey.progressbar.width}">
0 за отговор № 2
Имам брояч същия проблем и преди. Това е така, защото не разбирате техниката на Angularjs в стил ng. Вижте по-долу документ:
Angularjs предоставят две директиви ngClass
& ngStyle
и двамата могат да получат израз, резултатът от израза е един от списъка по-долу:
- Низ, използващ препратки към име на клас css, всеки от тях е отделен по интервал.
- Масив от имена на клас css.
- Обект, това е набор от двойка ключ-стойност, ключът е името на класа css, а стойността е булева стойност. Класът ще се използва, когато стойност eq
true
.
Обратно към вашия код.
Предпочитате да използвате {{expression}}
за да получите динамична стойност.
Първият ред, който използвате
ng-style
, той проверява израза като низ "width: value" и няма съвпадение на име на css клас, така че той не работиВъв втория ред просто използвате атрибут style, той може да различи оформлението на браузъра.