jQuery - 检测元素高度是否大于窗口高度并对此采取措施

发布于 2024-12-02 17:07:11 字数 292 浏览 0 评论 0原文

标题确实说明了一切。

基本上我想检测这个 divheight 是否大于 window height 并对此采取措施。 我已经这样做了,

但无法让它工作http://jsfiddle.net/dhkCa/3为什么它不起作用?

编辑:修复了 css 代码中的一个小错误。 Jsfiddle 链接已更新。

The tittle really says it all.

Basically i want to detect if this div's height is bigger than window height and do something about it..

I have done this but i cant get it to work http://jsfiddle.net/dhkCa/3 Why wont it work?

Edit: Fixed a little error in the css code. Jsfiddle link updated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

热风软妹 2024-12-09 17:07:11

document 包含其自身内的所有元素,其高度是所有这些元素的高度之和(无论如何,所有 display:block 元素,加上边距和填充);因此,包含的元素不能高于文档本身。您需要做的是比较窗口的高度,而不是文档的高度:

var div = $("div").height();
var win = $(window).height();

if (div > win ) {
    $("div").addClass('red');
}

JS Fiddle 演示

The document's contains all the elements within itself, and its height is a sum of the heights of all those elements (all the display:block elements anyway, plus margin and padding); therefore no contained element can be taller than the document itself. What you need to do is compare the window's height, not the document's:

var div = $("div").height();
var win = $(window).height();

if (div > win ) {
    $("div").addClass('red');
}

JS Fiddle demo.

寻找我们的幸福 2024-12-09 17:07:11

对于滚动高度与文档滚动高度不同的元素,您可以使用 element.getBoundingClientRect().height (文档)

For an element that has a scroll height that's different than the document's scroll height, you can use element.getBoundingClientRect().height (Docs).

东京女 2024-12-09 17:07:11

我建议使用 .outerHeight(),因为 .height() 不会查看元素的填充。

var div = $("div").outerHeight();
var win = $(window).height();

if (div > win ) {
    $("div").addClass('red');
}

I would suggest to use .outerHeight(), since .height() doesn't look at the padding of an element.

var div = $("div").outerHeight();
var win = $(window).height();

if (div > win ) {
    $("div").addClass('red');
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文