【问题标题】:Getting the value of a (perhaps un-applied) CSS attribute [duplicate]获取(可能未应用)CSS属性的值[重复]
【发布时间】:2014-06-12 21:05:38
【问题描述】:

我有以下 CSS

.EggChart {
    width: 5000px;
    height: 400px;
}

并且想从 CSS 类规范中读取 height 的值,可以使用原始 JavaScript 或 jQuery。如果该类已应用于 DOM 的元素,这似乎很简单:我会选择具有此类的 DOM 元素并读取它们的 CSS 属性,但如果类 尚未应用于任何 DOM 元素 我该怎么做?

【问题讨论】:

    标签: javascript jquery css


    【解决方案1】:

    对于具有固定值的简单 CSS 属性(例如上面给出的那些),您可以创建一个虚拟元素,然后获取您要查找的属性的计算值。

    使用原生 JavaScript:

    var el = document.createElement('div');
    el.className = 'EggChart';
    console.log(window.getComputedStyle(el).getPropertyValue('height'));
    

    使用 jQuery:

    console.log($('<div class="EggChart"></div>').css('height'));
    

    【讨论】:

    • 这当然有效(+1),但它真的是唯一的方法吗?难道我们无法直接通过 JavaScript 访问页面中的 CSS 规范吗?
    • @dumbledad:您必须解析文档样式表,这本身就是一个完全不同的联盟......
    • 哎呀——太对了!我不想开始。
    • @dumbledad 要通过 JS 直接操作 CSS 样式表,请看这里:hunlock.com/blogs/Totally_Pwn_CSS_with_Javascript
    猜你喜欢
    • 2018-03-31
    • 2012-03-12
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-29
    • 1970-01-01
    相关资源
    最近更新 更多