Smipto
20D
V2EX  ›  问与答

求一个 js 写法,弹出的选择器如何选中中间的 li(弹出有的滚动条,滚上滚下自动选中中间的 Li)

  •  
  •   Smipto · Apr 24, 2022 · 1709 views
    This topic created in 1654 days ago, the information mentioned may be changed or developed.
    13 replies  •  2022-04-24 22:54:37 +08:00
    Smipto
    Smipto
    OP
    Apr 24, 2022
    1
    滚动上下的时候,自动选中中间的 LI ,给他 addclass class=this
    nitmali
    nitmali
    Apr 24, 2022
    2
    没看懂
    pendulum
    pendulum
    Apr 24, 2022
    3
    什么是“弹出有的滚动条”
    Smipto
    Smipto
    OP
    Apr 24, 2022
    4
    @nitmali 选日期不是有类似的 pick 吗,滚动自动选中中间的值
    Smipto
    Smipto
    OP
    Apr 24, 2022
    5
    @pendulum 就是跟日期的一直滚动选中中间的 pick
    nitmali
    nitmali
    Apr 24, 2022
    6
    你说的不会是鼠标悬停效果吧
    marcong95
    marcong95
    Apr 24, 2022
    7
    li 元素又不接受焦点,DateTimePicker 那种不都是自己实现的么,算好位置之后设置 CSS transform: translateY(xx); 这种感觉
    nitmali
    nitmali
    Apr 24, 2022
    8
    我知道你说的什么了。

    固定弹出层高度和子项高度,监听滚动,计算滚动距离和修正滚动,可以计算出当前显示在中间的子项
    Smipto
    Smipto
    OP
    Apr 24, 2022
    9
    @nitmali 哈哈哈,已经有意思了,获取可视高度,再计算中间坐标,再选择监听滚动条的位置计算得出中间的变化的坐标
    snoopyhai
    snoopyhai
    Apr 24, 2022❤️1
    10
    https://vant-contrib.gitee.io/vant/v2/#/zh-CN/picker

    这玩意, 其中有个参数叫 default-index

    找找源码, 看看如何实现的.
    unsized
    unsized
    Apr 24, 2022❤️2
    11
    抛砖引玉,实现了一个轻量版的: https://output.jsbin.com/begibifaza
    f0rger
    f0rger
    Apr 24, 2022 via iPhone❤️1
    12
    能找到对应 li 然后 scrollIntoView 吗
    Smipto
    Smipto
    OP
    Apr 24, 2022
    13
    @tyx1703 牛逼~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1736 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 54ms · UTC 17:06 · PVG 01:06 · LAX 09:06 · JFK 12:06
    ♥ Do have faith in what you're doing.