Jquery 隐藏超过外部分割高度的内部分割

Jquery 隐藏超过外部分割高度的内部分割,jquery,css,Jquery,Css,应该隐藏整个元素。外部div上不应该有滚动条。这只能通过CSS实现,还是需要jQuery?如何实现这一点?添加溢出:隐藏;属性添加到外部分区。添加溢出:隐藏;属性到外部分区。总体思路如下: $("div div").filter(function() { var $this = $(this), pTop = $this.parent().offset().top, // parent position

应该隐藏整个元素。外部div上不应该有滚动条。这只能通过CSS实现,还是需要jQuery?如何实现这一点?

添加溢出:隐藏;属性添加到外部分区。

添加溢出:隐藏;属性到外部分区。

总体思路如下:

$("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();

总体思路如下:

$("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();

这根本没有经过测试,很可能需要进行调整,但为了让您大致了解如何使用jQuery实现这一点:

var container = $('#container');
var element = $('#element');

if ((element.position().top + element.position.height()) > container.height()) {
    element.hide();
}

这根本没有经过测试,很可能需要进行调整,但为了让您大致了解如何使用jQuery实现这一点:

var container = $('#container');
var element = $('#element');

if ((element.position().top + element.position.height()) > container.height()) {
    element.hide();
}

你能显示你的代码吗?你可以试试overflow:hidden,但我认为这只会隐藏大于高度的部分div,而不是整个div。你想隐藏整个元素吗?或者仍然显示在外部div边界内的部分?是的,我想隐藏完整的元素。您需要使用Javascript。jQuery将使它更容易。您能显示您的代码吗?您可以尝试overflow:hidden,但我认为这只会隐藏div中大于高度的部分,而不会隐藏整个div。是否要隐藏整个元素?或者仍然显示在外部div边界内的部分?是的,我想隐藏完整的元素。您需要使用Javascript。jQuery将使它更容易。这将剪切最低的div仅部分隐藏它这将剪切最低的div仅部分隐藏它提供外部div为name mainleet,内部div为name row,那么它是否应该是$mainleet row?@user1750323不,我不选择两个div。我只是显示我选择了div中的div,即容器中的块。您可以将其替换为$container.block或其他任何内容。假设外部div为name mainleet,内部div为name row,那么它是否应该为$mainleet row?@user1750323否,我不选择两个div。我只是显示我选择了div中的div,即容器中的块。您可以用$container.block或其他任何东西替换它。