如何通过用户可扩展页面使div在移动设备中始终可见?

基本上,我想构建一个包含每周日历的页面。由于日历很大,因此我希望用户可以放大日历以查看概述并滚动到所需的特定时间。问题在于,滚动用户时,会丢失他们正在查看的当天的上下文。同样重要的是要注意,日期在页面的左侧,滚动是水平进行的。

我基于window.scrollX构建了一个解决方案,该解决方案使用转换将div转换到视口的左侧。这在浏览器中效果很好,但不幸的是,在移动设备上不起作用。正确翻译的唯一方法是至少在Chrome移动版上最大程度地放大页面。尝试在Google Chrome响应式设计上调试后,即使滚动条不在开始时,我也看到window.scrollX事件的值为0

我想知道是否有人遇到这个问题,并且对如何使div始终独立于缩放和滚动保持可见状态有任何想法。请注意,添加元视口minimum-scale = 1可以解决此问题,但是那样就无法再缩放。

编辑:

有关我当前正在做的事情的更多信息。我正在使用react并且有一个执行以下操作的钩子(https://github.com/neo/react-use-scroll-position):

useEffect(() => {
    let requestRunning = null
    function handleScroll () {
      if (isBrowser && requestRunning === null) {
        requestRunning = window.requestAnimationFrame(() => {
          setScrollPosition(getScrollPosition())
          requestRunning = null
        })
      }
    }
    if (isBrowser) {
      window.addEventListener('scroll',handleScroll)
      window.addEventListener('touchmove',handleScroll)
      return () => {
        window.removeEventListener('scroll',handleScroll)
        window.removeEventListener('touchmove',handleScroll)
      }
    }
  },[])

我已将getScrollPosition()函数更改为使用document.body.getBoundingClientRect()而不成功,并且原始函数使用window.scrollX。

以下是我想在移动设备上实现的目标:

如何通过用户可扩展页面使div在移动设备中始终可见?

我可以使用它,但是可以通过限制视口来禁用取消缩放功能。但是我希望用户能够在该div始终位于可见窗口的左侧时进行水平缩放和水平滚动。任何想法/替代品将不胜感激!

jiejieyanyanhaohao 回答:如何通过用户可扩展页面使div在移动设备中始终可见?

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3121422.html

大家都在问