当前位置: 首页 > 面试题库 >

无法更改AngularJS中的CSS样式

颛孙庆
2023-03-14
问题内容

由于某些原因,我无法使用以下命令更改元素的样式:

angular.element("#element").style.height = 100px;

我敢肯定angular.element("#element"),因为它返回一个DOM元素。另外,这可行:

angular.element("#element").addClass('something');

(我发现的所有内容都与ngStyle有关,但我不认为这是我想要的?)

我应该使用其他东西吗?

如果是这样:什么?为什么.style.something不起作用?


问题答案:

根据 文档

注意:Angular中的所有元素引用始终使用jQuery或jqLit​​e进行包装; 它们永远不是原始的DOM引用。

因此,该.style属性不能直接使用,因为它是包装的属性
HTMLElement

您可以使用ivarni的方法来获取HTMLElement(angular.element(...)[0].style...),也可以使用jQuery的/
jqLit​​e的.css()方法:

angular.element('#element').css('height', '100px');


 类似资料:
  • 我在iOS应用程序中实现了一个导航栏,我将淡色设置为白色,但在运行应用程序时,状态栏不跟随淡色,只是透明的(见图)。我的目标是状态栏有半透明的风格。 怎么解决这个问题?

  • 本文向大家介绍jQuery CSS()方法改变现有的CSS样式,包括了jQuery CSS()方法改变现有的CSS样式的使用技巧和注意事项,需要的朋友参考一下 jQuery入门实例:使用CSS()方法改变现有的CSS样式表,css()方法在使用上具有多样性。其中有一种可接受两个输入参数:样式属性和样式值,两者之间用逗号分隔。比如要改变链接颜色,可以这样编写代码: 如果需要改变多个样式属性,可先定义

  • HTML CSS 上面的svg加载并且是本机的但是当我使用上面的尝试将它更改为黑色时,它没有改变,这是我第一次使用svg并且我不确定它为什么不工作。

  • 问题内容: 有没有一种方法可以使用javascript更改CSS类的属性? 我想在用户调用函数changeCSS()后将display:block更改为display:none,将所有元素都更改为无。 看起来很简单,但我找不到解决方法… 问题答案: 关键是为其他类定义额外的规则,并将这些类添加到元素中,而不是重写给定样式规则的规则。 JS CSS 或使用真正有效的方法(但可能还需要一些特定的样式规

  • 问题内容: 现在,我有一个背景图像URL硬编码到CSS中。我想使用AngularJS中的逻辑动态选择背景图片。这是我目前拥有的: HTML CSS 如您所见,CSS中的背景图像引用了特定的文件位置。我希望能够以编程方式确定图像URL的位置。我真的不知道从哪里开始。我不知道JQuery。谢谢。 问题答案: 您可以使用ng-style使用AngularJS动态更改CSS类属性。 希望这个ng样式的示例

  • 问题内容: 如何更改复选框(输入)边框的样式?我已经戴上了它,但是在FireFox 3.5中,什么都没有发生! 问题答案: 如果 任何 浏览器发生问题,我都会感到惊讶。这是那些出色的表单元素之一,浏览器往往不会让您设置太多样式,并且人们通常尝试替换为javascript,以便他们可以设置样式/代码以使其外观和行为类似复选框。