应该隐藏整个元素。外部 div 上不应该有滚动条。这可以仅通过 CSS 实现还是需要 jQuery?如何实施?
问问题
990 次
3 回答
3
总体思路如下:
$("div div").filter(function() {
var $this = $(this),
pTop = $this.parent().offset().top, // parent position
// (no need if parent has
// "position: relative")
pHeight = $this.parent().height(), // parent inner height
eTop = $this.offset().top, // block position
// (can be replaced with
// "$this.position().top"
// if parent has
// "position: relative")
eHeight = $this.outerHeight(true); // block outer height
return (eTop + eHeight) > (pTop + pHeight);
}).hide();
(理论上这应该有效。)
另一种方法:
var sumHeight = 0;
$("div div").filter(function() {
var $this = $(this),
pHeight = $this.parent().height(); // parent inner height
sumHeight += $this.outerHeight(true); // + block outer height
return sumHeight > pHeight;
}).hide();
于 2012-11-19T16:16:21.017 回答
3
这根本没有经过测试,很可能需要进行调整,但是为了让您大致了解如何使用 jQuery 来做到这一点:
var container = $('#container');
var element = $('#element');
if ((element.position().top + element.position.height()) > container.height()) {
element.hide();
}
于 2012-11-19T16:16:51.233 回答
1
将overflow:hidden;
属性添加到外部 div。
于 2012-11-19T16:09:59.233 回答