gpt4 book ai didi

javascript - 如何判断一个div是否有高度限制?

转载 作者:行者123 更新时间:2023-11-29 20:15:47 26 4
gpt4 key购买 nike

如果 div 是否受高度限制,我想知道使用 jquery。

例如,这个 div 被限制为 100px,无论内容的大小如何,div 的高度都是 100px:

    <div style="height: 100px;">
bla bla
</div>

这个没有约束,会占据它内容的高度:

    <div>
bla bla
</div>

换句话说,我想知道是否通过设置 style 属性或使用单独的 css 样式设置了高度(如果设置了怎么办)。谢谢

FF3.6 FF5 IE8 Chrome12 和 Opera11 解决方案:

function css(a){
var sheets = document.styleSheets;
var o={};
var name;
var i=0;
while (i<sheets.length) {
var rules = sheets[i].rules || sheets[i].cssRules;
var r=0;
while(r<rules.length) {
if(typeof(rules[r].style)!="undefined" &&
!rules[r].selectorText.match(":before") && // fix for FF3.6
!rules[r].selectorText.match(":after") &&
!rules[r].selectorText.match(":link") &&
!rules[r].selectorText.match(":hover") &&
!rules[r].selectorText.match(":active") &&
!rules[r].selectorText.match(":visited") &&
!rules[r].selectorText.match(":first-letter") &&
!rules[r].selectorText.match(":-moz-focus-inner") &&
a.is(rules[r].selectorText)) {
o = $.extend(o, css2json(rules[r].style), css2json(a.attr('style')));
}
r++;
}
i++;
}
return o;
}

function css2json(css){
var s = {};
if(!css) return s;

var isMSIE = /*@cc_on!@*/0;

if (isMSIE)
{
if(typeof(css)=="object")
{
for(var i in css) {
if(i.toLowerCase)
s[i.toLowerCase()] = css[i];
}
}
else if(typeof css == "string")
{
css = css.split("; ");
for (var i in css) {
var l = css[i].split(": ");
s[l[0].toLowerCase()] = (l[1]);
};
}
}
else
{
if(css instanceof CSSStyleDeclaration)
{
for(var i in css) {
if((css[i]).toLowerCase)
s[(css[i]).toLowerCase()] = (css[css[i]]);
}
}
else if(typeof css == "string")
{
css = css.split("; ");
for (var i in css) {
var l = css[i].split(": ");
s[l[0].toLowerCase()] = (l[1]);
};
}
}
return s;
}



...
alert(css($('some selector')).height);

最佳答案

使用 this answer 中提供的功能,您可以像这样访问元素的高度:

css($('div')).height

这些函数说明了内联样式和继承样式,我相信这就是您想要的。如果未明确指定高度,则返回对象的 height 属性将为 undefined

Demo

关于javascript - 如何判断一个div是否有高度限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6858042/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com