Javascript 动态更改CSS AngularJS

Javascript 动态更改CSS AngularJS,javascript,html,css,angularjs,Javascript,Html,Css,Angularjs,我想动态地、一次性地、动态地更改otc中任何类的样式。因为CSS样式来自Web Api。javascript有没有办法做到这一点 谢谢那些愿意帮忙的人 这是我的HTML: <accordion close-others="false"> <div> <accordion-group class="div-recipe-header"> <accordion-heading></accordion-he

我想动态地、一次性地、动态地更改otc中任何类的样式。因为CSS样式来自Web Api。javascript有没有办法做到这一点

谢谢那些愿意帮忙的人

这是我的HTML:

 <accordion close-others="false">
   <div>
      <accordion-group class="div-recipe-header">
           <accordion-heading></accordion-heading>
              <my-directive></my-directive>
                 <div otc-dynamic>
                     <div class="div-recipe-name"></div>
                      <div class="div-recipe-cost"></div>
                </div>   

      </accordion-group>
    </div>
  </accordion>
使用。这将允许您动态设置类。此外,您还可以对ng类使用三元操作,如图所示

我假设您在加载到内存中的样式表中定义了类

    .white{
        color: #ffffff;
    }
    .black{
        color: #000000;
    }
在angular controller中,可以定义一个变量来保存类名。在这里,我将其设置为默认应用“白色”

$scope.myClass = "white";
然后在标记中,您只需使用ng类将该变量绑定到元素

<div ng-class="myClass">....</div>

只需从后端json获取动态类名,而不是获取整个css内容。将类定义保留在本地文件中,然后通过ng class指令动态应用它看起来像在做相反的操作

您已将类指定给元素。然后稍后从JSON下载每个类的样式

您可以将这些样式嵌入到文档中

usercss = '.div-recipe-cost{position: ab........'; // Your css

var css = document.createElement("style");
css.type = "text/css";
css.innerHTML = usercss;
document.body.appendChild(css);

你能使用ng类吗?我不知道如何使用ng类:(.我只是一个角度的新手..我想船长已经给了你答案:)我如何应用我的代码?很抱歉我真的是个新手:(我用一个简单的例子修改了我的答案。这就是angularjs不适合新手。我建议在开始使用angularjs这样的复杂框架之前,先学习简单css和javascript的基础知识和良好实践。我已经编写javascript和css十多年了,angularjs对我来说仍然很难理解使用3年后的复杂场景months@captain,css将如何更改?我将把保存css样式的变量放在代码的哪个区域?我已修改了答案以包含更多细节。css应在类中定义。这不可能吗?请参阅以下文档
if( some_condition ){
    $scope.myClass = "black";
} else {
    $scope.myClass = "white";
}
usercss = '.div-recipe-cost{position: ab........'; // Your css

var css = document.createElement("style");
css.type = "text/css";
css.innerHTML = usercss;
document.body.appendChild(css);