javascript - 在 head 元素中附加子元素时如何将 Controller 范围变量传递给 angular.element

标签 javascript jquery html css angularjs

你好,

所以我们有以下 Controller :

'use strict';

angular.module('24SevenWse')
  .controller('NavbarCtrl', ['$scope', 'dataFactory', function ($scope, dataFactory) {
      $scope.user = dataFactory.getUser();
      $scope.code = dataFactory.getCode();
      }
      var companyLink = angular.element('<link rel="stylesheet" href="http://localhost/~jw1050/css/$scope.code.css">');
      angular.element('head').append(companyLink);


  }]);

如您所见,我将一个新的样式表附加到页面的 head 元素。现在,当我硬编码值时,例如:

var companyLink = angular.element('<link rel="stylesheet" href="http://localhost/~jw1050/css/ABC.css">');

但是,我正在尝试根据用户登录软件时使用的代码通过 CSS 加载新图像。

现在,这是针对以下的 View :

<nav class="navbar navbar-fixed-top" ng-controller="NavbarCtrl">
  <div class="container-fluid">
        <div class="navbar-header pull-left">
          <a class="navbar-brand tracking-navbar-brand newImage">
              <img id="custLogo">
          </a>
        </div>
      </div>
</nav>

被注入(inject)头部的 .css 文件仅包含以下内容:

#custLogo {
    content: url("http://localhost/~jw1050/logos/logo.png");
}

每个 .css 文件都将以用户可以用来登录的代码命名。例如,用户使用代码 ABC 登录。该代码将直接对应于文件 ABC.css

所以我需要通过 Controller 将代码传递给 var companyLink,这样附加到文档头部的样式表将是:

<link rel="stylesheet" href="http://localhost/~jw1050/css/ABC.css">

现在我在 Controller 中尝试了以下操作:

var companyLink = angular.element('<link rel="stylesheet" href="http://localhost/~jw1050/css/{{code}}.css">');
var companyLink = angular.element('<link rel="stylesheet" href="http://localhost/~jw1050/css/'{{code}}'.css">');

似乎都不起作用。我的想法是我附加到头部的链接是 View 的一部分。所以应该可以通过controller中的代码来查看,但是好像不行。

有什么想法吗?

最佳答案

试试这个:

var companyLink = angular.element('<link rel="stylesheet" href="http://localhost/~jw1050/css/'+$scope.code+'.css">');

关于javascript - 在 head 元素中附加子元素时如何将 Controller 范围变量传递给 angular.element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32657358/

相关文章:

html - dl元素的宽度

javascript:函数调用自身

javascript - 如何在 Analytics.js 中始终了解最新的 cookie 过期时间

javascript - Facebook Like 和 Twitter Tweet 加载缓慢

javascript - 仅在视口(viewport)中可见的元素上添加和删除 CSS 动画

java - 需要有关在网络上显示(和/或转换)pdf 文件的建议

javascript - 我可以在我的列表编号中添加文本吗

php - 实时更新文本 block

javascript - 方法与基本 JS?我应该使用 toString 吗?解析整数?查询?

javascript - 我如何判断用户是否使用 Brave 作为他们的浏览器?