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

使用JavaScript动态更改元素样式属性

席俊达
2023-03-14
问题内容

我有一个div的特定样式表。现在我想使用js动态修改div的一个属性。

我该怎么做?

document.getElementById("xyz").style.padding-top = "10px";

它是否正确?


问题答案:

几乎是正确的。

由于-是JavaScript操作符,因此您实际上不能在属性名称中使用它。如果您正在设置,border或者类似的单字,您的代码就可以正常工作。

但是,padding- top对于任何带连字符的属性名称,您都需要记住的是,在javascript中,您删除了连字符,并使下一个字母变为大写,因此应为paddingTop

还有其他一些例外。JavaScript有一些保留字,因此float,例如,您不能这样设置。相反,在某些浏览器中需要使用,cssFloat而在其他浏览器中则需要使用styleFloat。对于这样的差异,建议您使用诸如jQuery之类的框架,该框架可以为您处理浏览器的不兼容性。



 类似资料:
  • 问题内容: 我具有以下功能,当触发该功能时,DIV将变为半透明。 但是,我希望此功能可同时应用于多个DIV。我尝试为每个DIV赋予相同的类名,然后使用,但不知道如何实现它。 会更合适,如果可以的话,我将如何实施呢? 问题答案: 我将使用querySelectorAll选择它们并在它们上循环。 编辑:正如上面的评论所述,如果这些值不是动态的并且使用,则最好将这些值放在类中:

  • 问题内容: 是否可以通过JavaScript更改CSS伪元素样式? 例如,我想像这样动态设置滚动条的颜色: 而且我还希望能够告诉滚动条这样隐藏: 但是,这两个脚本都返回: 未捕获的TypeError:无法读取null的属性“样式” 还有其他解决方法吗?跨浏览器的互操作性并不重要,我只需要它在Webkit浏览器中即可工作。 问题答案: 编辑 : 从技术上讲,有一种通过JavaScript直接更改CS

  • 我有一个名为的简单函数: 我想知道除了这个以外,是否还有其他方法可以添加某些属性的值:等于,等于等。 我试过这样的方法: 但那行不通。我知道尝试它可能是愚蠢的(因为我的IDE说这个表达式不能分配给类型HTML元素^^')。

  • 问题内容: 我想: 查找页面中所有元素的样式属性(例如:具有的所有元素) 更改所有属性(例如从到)。 您对此有何建议? 问题答案: 我的建议是尽可能避免这样做。而是使用类来分配颜色值,然后可以使用该类而不是颜色值来查找元素。 据我所知,没有可用于查询 特定 样式值的选择器(即使在CSS3中也是如此),这意味着循环遍历所有元素(或者看起来可以将其限制为具有属性的所有元素)并看着财产。现在,问题是,即

  • 问题内容: 是否可以使用或在angular2中更改伪元素的样式? 为了使div上的模糊效果像叠加层一样,我应该在伪元素上设置背景图像。 我尝试了类似的东西 它没有用。我也试过了 问题答案: 不,这不可能。实际上,这不是一个Angular问题:伪元素不是DOM树的一部分,因此不会暴露任何可用于与其交互的DOM API。 如果要以编程方式处理伪元素,通常的方法是间接的:添加/删除/更改类,并在CSS中

  • 问题内容: 如何使用WebDriverWait等待属性更改? 在我的AUT中,我必须等待按钮被启用后才能继续,但是不幸的是,由于开发人员对页面进行编码的方式,我无法使用WebElement的isEnabled()方法。开发人员正在使用一些CSS来使按钮看起来像已禁用,因此用户无法单击它,并且isEnabled方法始终为我返回true。因此,我要做的就是获取属性“ aria-disabled”,并检