gpt4 book ai didi

javascript - 使用 Javascript scrollLeft 强制滚动定位

转载 作者:行者123 更新时间:2023-11-30 07:48:30 24 4
gpt4 key购买 nike

我有一组 Javascript 函数,我使用输入元素表来启用导航。比如跟踪当前聚焦的元素,从一行的末尾溢出到下一行的开头。通过创建一个只有一列宽的表作为我的固定列并为另一个表设置一个滚动条,我有一个固定的第一列的滚动条支持。

但是,我最近注意到滚动条的默认行为有点不足。当我导航到最后一列时,Firefox 使该列部分被滚动条遮挡,而不是滚动到足以看到它。同样,当我滚动到最后一列的另一部分时,当我移动到下一行并且导航代码将焦点设置到第一列(卡住表)中的一个单元格时,Firefox 不会改变滚动条,这样我就可以看到第一列的所有内容。

因此,我一直在研究如何使用 javascript 修改滚动条定位。我的表格不使用垂直滚动条,只使用水平滚动条。所以我偶然发现了 scrollLeft。

document.getElementById("meastable").scrollLeft = 1; // reset scroll to leftmost

不幸的是,这似乎只是偶尔有效。当我启用 Firebug 并通过我的导航代码跟踪此行所在的位置时,它似乎偶尔会工作,但大多数时候,此行会运行但表滚动左侧属性未更改,我看不到更改视觉上。

我还将 scrollLeft 设置为一个较大的数字,因此它将被设置为文档中描述的最大值,但这也不起作用(除了偶尔)。

我使用以下代码为我的表格设置滚动条。

<div style="overflow:auto">
<table id="meastable" border="1">

根据 Mozilla 的文档,这似乎起源于 IE,但现在可以在 Firefox 中使用。这实际上在 Firefox 中不起作用吗,因为它的内部项目将仅适用于 Firefox。

所以我想找出问题所在。是否知道 scrollLeft 不能正常工作,或者我应该回去看看我是否在我的滚动条定义中搞砸了某些东西或类似的东西?

最佳答案

包含的 div 是溢出的元素。您需要设置 div 的 scrollLeft,而不是表格。

关于javascript - 使用 Javascript scrollLeft 强制滚动定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/722582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com