jquery -Get未应用类的CSS属性值 [英] jquery -Get CSS properties values for a not yet applied class
问题描述
我有同样的问题在这里问(无法对其评论,也许没有一个特权),我想获得css宽度值定义在样式表,但尚未应用于任何元素在dom,(其bootstrap css与网格响应媒体查询)
.span6 {
width:570px;然而,上面引用的问题中提供的解决方案返回0 ie like this $('< div />')。addClass('span6')。
但如果我这样做的话会有效
$('< div />')addClass('span6')。hide()。appendTo('body')。
h2_lin>解决方案
为了读取一个CSS属性值,你需要动态插入一个隐藏的元素到DOM,读取属性,最后删除它:
var getCSS = function(prop,fromClass){
var $ inspector = $(< div> display','none')。addClass(fromClass);
$(body)。append($ inspector); //添加到DOM,以便读取CSS属性
try {
return $ inspector.css(prop);
} finally {
$ inspector.remove(); // and remove from DOM
}
};
i have a same question asked here(wasnt able to comment on it,maybe dont have a priviledge) , i want to get css width value defined in stylesheet but not yet applied on any element in dom ,(its bootstrap css with grid with responsive media queries)
.span6 {
width: 570px;
}
However solution provided in above referenced question return 0 i.e like this
$('<div/>').addClass('span6').width();
but works if i do something like this
$('<div/>').addClass('span6').hide().appendTo('body').width();
any easy way without appending that div?
In order to read a CSS property value, you need to dynamically insert a hidden element to the DOM, read the property and finally remove it:
var getCSS = function (prop, fromClass) {
var $inspector = $("<div>").css('display', 'none').addClass(fromClass);
$("body").append($inspector); // add to DOM, in order to read the CSS property
try {
return $inspector.css(prop);
} finally {
$inspector.remove(); // and remove from DOM
}
};
这篇关于jquery -Get未应用类的CSS属性值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!