【问题标题】:Get position of child element relative to side viewport获取子元素相对于侧视口的位置
【发布时间】:2019-11-21 17:32:03
【问题描述】:

我有一个水平溢出的父级。我想要基于相对于左侧的(触摸)滚动位置的孩子(和子孩子)的位置。我尝试的每个 JS 函数都返回固定位置。

<div class="parent"> <div class="child-one"></div> <div class="child-two"></div> </div>

.parent { overflow-x: scroll; overflow-y: hidden; width: 100vw; } .child-one, .child-two { width: 50vw; }

在这个例子中,如何知道 child-two 何时进入右侧的视口? PS。 50vw 只是一个例子,它永远不会是父级宽度的一半:)

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    你需要查看scrollLeft属性(https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollLeft

    基本上,你需要查看子元素的绝对左侧(相对于父元素),减去父元素的宽度,然后如果父元素的 scrollLeft 属性大于差值,则子元素将滚动到可见范围(然后您需要确保它也没有滚动到左侧)

    【讨论】:

    • 感谢它的工作,出于某种奇怪的原因,我不得不将该 css 应用于文档的正文,然后我会得到 scrollLeft 更改值。忘了提到“.parent”是页面中的全屏元素
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-12
    • 1970-01-01
    • 2018-12-25
    • 1970-01-01
    • 2010-11-23
    • 2023-03-13
    • 1970-01-01
    相关资源
    最近更新 更多