Skip to content

滚定区域内,把子元素滚动到 父元素中间位置(如:可滚动横向 tab 滚动到中间位置) #21

Description

@JslinSir
// parentEl代表父元素,也就是设置了overflow为可滚动的元素
    // childEl代表需要滚动到父元素正中间的直接子元素

    // 水平滚动
    let x = childEl.offsetLeft - parentEl.clientWidth + parentEl.clientWidth/2 + childEl.clientWidth/2;
    parentEl.scrollTo({
        left: x,
        behavior: "smooth",
    });

    // 垂直滚动
    let y = childEl.offsetTop - parentEl.clientHeight + parentEl.clientHeight/2 + childEl.clientHeight/2;
    parentEl.scrollTo({
        top: y,
        behavior: "smooth",
    });

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions