当前位置:  开发笔记 > 编程语言 > 正文

jQuery和行高

如何解决《jQuery和行高》经验,为你挑选了1个好方法。

哦,是的,关于这个规则的另一个问题.那我们在这里有什么?如果我使用jQuery来获得像这样的行高:

$elm.css('lineHeight')

我总是得到已计算的值,例如20px.它来自font-size 10和2 line-height.

但如果我这样得到线高:

elm.style.lineHeight

我得到了未计算的实际价值

问题是 - 如何使用jQuery获取行高规则的值?为什么jQuery会返回计算值!?



1> 小智..:

elem.style只返回一个元素的声明内联样式而不是实际应用的样式.请参阅https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/style

style属性对于一般学习元素的样式没有用,因为它只表示元素的内联样式属性中设置的CSS声明,而不是来自其他地方样式规则的CSS声明,例如节中的样式规则或外部样式床单.要获取元素的所有CSS属性的值,您应该使用它window.getComputedStyle().

jQuery.css()返回计算出的样式

描述:获取匹配元素集中第一个元素的计算样式属性.

要使用jQuery获取内联样式,您必须通过查询属性attr('style').

你可以使用这样的函数:( http://andreknieriem.de/jquery-checken-ob-ein-element-ein-bestimmtes-inline-style-attribut-hat/)

(function ($) {
$.fn.inlineStyle = function (prop) {
     var styles = this.attr("style"),
         value;
     styles && styles.split(";").forEach(function (e) {
         var style = e.split(":");
         if ($.trim(style[0]) === prop) {
             value = style[1];           
         }                    
     });   
     return value;
};
}(jQuery));

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有