javascript - 如何在html元素中调用css类作为函数?

标签 javascript html css sass less

如何实现将 css 类作为函数调用?我不想为每个宽度值生成类?有没有像下面这样的解决方案?

I am trying to update style's width value according to back-end code (width represents product's amount).

<style>
    .dynamicWidth(@param){
    width:@param px;
    }
</style>

    <div class='dynamicWidth(40)'></div>

我可以通过使用内联样式代码来解决这个问题,但由于内容安全策略,我不想使用内联样式代码。

//I don't want to use it like this.

<style>
  .dynamicWidth{
        dynamicWidth:var (--param);
  }
</style>
<div class="dynamicWidth" style="--param : 40;"></div>

最佳答案

您可以使用 JavaScript 来完成此操作:

var elements = document.getElementsByClassName("dynamicWidth");

Array.from(elements).forEach((element) => {
  element.style.width = element.getAttribute("data-width") + "px";
});
.dynamicWidth {
  height: 20px;
  background: red;
}
<div class='dynamicWidth' data-width='40'></div>
<div class='dynamicWidth' data-width='60'></div>
<div class='dynamicWidth' data-width='90'></div>

关于javascript - 如何在html元素中调用css类作为函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56494524/

相关文章:

javascript - 使用 jQuery 可拖动从 Canvas 获取像素颜色?

html - Twitter/Facebook 分享动态 URL

jquery - 动画背景位置在浏览器上的工作方式不同

javascript - 如何使用 JavaScript 使 SVG 缩放到父容器的全高和全宽?

html - 当 Ionic 4 中的记录数量增加时,如何使滚动按钮自动可见?

javascript - 关于在 $.get() 中获取响应的问题

javascript - 在 JavaScript 中将字符串解析为日期

html - 我的 bootstrap 4 col-sm-6 行没有在移动设备上堆叠

javascript - 动态添加新的 ng-model 到 angularJS

javascript - 在 PhantomJS 上禁用 LocalStorage 以进行干净测试?