html页面滚动条滚动到指定内容位置

问题

页面中的table横向滚动,用户要求页面一加载就滚动到具体列位置

解决方法

所有html标签自带scrollIntoView()方法,可以定位到你所要去的位置

代码

<script>
// 横向滚动到table表中指定文字中间位置
function clickThree() {
	//获取td元素,找到你想去的文字位置
  var td = document.getElementsByTagName('td');
  for(let i = 0 ;i < td.length ; i++){
    if(td[i].innerText == '第20列'){
    //可视化窗口会移动到该位置
      td[i].scrollIntoView({block: "nearest", inline: "center"});
      break;
    }
  }

}

</script>

  <button onclick="clickThree()">GO</button>
  <div style="overflow-x: auto;   width:800px;">
    <table class="gridtable">
      <tr>
        <td>1</td>
        <td>2</td>
        <td>3</td>
        <td>4</td>
        <td>5</td>
        <td>6</td>
        <td>7</td>
        <td>8</td>
        <td>9</td>
        <td>10</td>
        <td>11</td>
        <td>12</td>
        <td>13</td>
        <td>14</td>
        <td>15</td>
        <td>16</td>
        <td>17</td>
        <td>18</td>
        <td>19</td>
        <td>20</td>
        <td>21</td>
        <td>22</td>
        <td>23</td>
        <td>24</td>
        <td>25</td>
        <td>26</td>
        <td>27</td>
        <td>28</td>
        <td>29</td>
        <td>30</td>
        <td>31</td>
        <td>32</td>
        <td>33</td>
      </tr>
    </table>
  </div>
  
  <style>


table.gridtable {
  height: 100px; 
  width:800px;
    font-family: verdana,arial,sans-serif;
    font-size:11px;
    color:#333333;
    border-width: 1px;
    border-color: #666666;
    border-collapse: collapse;
}
table.gridtable th {
    border-width: 1px;
    padding: 8px;
    border-style: solid;
    border-color: #666666;
    background-color: #dedede;
}
table.gridtable td {
    border-width: 1px;
    padding: 20px 50px;
    border-style: solid;
    border-color: #666666;
    background-color: #ffffff;
}

  </style>

效果图

在这里插入图片描述

scrollIntoView方法介绍

用途:scrollIntoView 是 HTMLElement 集合下的一个 API,每一个 HTML 元素都拥有这个 API。它的作用就和字面意思一样:滚动到可视区

方法参数介绍:

element.scrollIntoView(); // 等同于 element.scrollIntoView(true)
element.scrollIntoView(alignToTop); // Boolean 型参数
element.scrollIntoView(scrollIntoViewOptions); // Object 型参数

参数解释:

  1. alignToTop:它是一个 Boolean 值,它用来规定元素出现在可视区后与可视区的对齐方式,为 true
    代表顶端对齐,false 代表低端对齐。

  2. scrollIntoViewOptions:它是一个对象,该参数主要是配置元素的动画效果以及位置的,它有一下 3 个属性:

    behavior:它定义元素出现在可视区内过程的动画,有 auto 和 smooth 两种选择。
    block:定义元素的垂直方向的对齐方式,有"start", “center”, “end”, 或 “nearest” 4 个选项,默认start。
    inline:定义元素水平对齐方式,有"start", “center”, “end”, 或 “nearest"4 个选项,默认"nearest”。

以上摘自这位博主!!!大家详细请看这位
https://zhuanlan.zhihu.com/p/525742938?utm_id=0

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值