js实现滚动条滚动到某个位置便自动定位某个tr

要实现带滚动条的table,定位到某个tr,其实是很简单的,只有几行js代码就可以完成,具体内容如下

js代码

rush:js;">

html

rush:xhtml;">

定位

ddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfd>ddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfdddddddddddddddddddddddddddddddddddddddddddddsererfd test()"/>

效果图:

虽说是几行代码,但要彻底弄懂。要熟悉animate的使用,scrollTop,.offsetTop的意思方可得心应手。

1. animate的使用说明:

animate() 方法执行 CSS 属性集的自定义动画。 该方法通过CSS样式将元素从一个状态改变为另一个状态。CSS属性值是逐渐改变的,这样就可以创建动画效果。 只有数字值可创建动画(比如 "margin:30px")。字符串值无法创建动画(比如 "background-color:red")。

2. scrollTop

scrollTop属性 有些情况下,“元素中内容”的高度会超过“元素本身”的高度,scrollTop指的是“元素中的内容”超出“元素上边界”的那部分的高度。

解释: 内层元素的高度值300px > 外层元素的高度值200px,因此“外层元素的内容”(也就是“内层元素”)无法完全显示,而外层元素把overflow设置为auto,因此外层元素的右侧会出现竖直滑动条 初始状态下,“内层元素的上边界”和“外层元素的上边界”重合,没有任何内容超过“外层元素的上边界”,此时scrollTop属性的值为0。 当向下拖动滚动块时,超过“外层元素的上边界”的内容会逐渐增多,scrollTop值就等于这些超出部分的高度。 当拖动滚动块到最底部时,“内层元素的下边界”和“外层元素的下边界”重合,此时,超过“外层元素的上边界”的内容的高度=300px-200px=100px,也就是此时的scrollTop值。

3..offsetTop,offsetLeft等

假设 obj 为某个 HTML 控件。 obj.offsetTop 指 obj 距离上方或上层控件的位置,整型,单位像素。 obj.offsetLeft 指 obj 距离左方或上层控件的位置,整型,单位像素。 obj.offsetWidth 指 obj 控件自身的宽度,整型,单位像素。 obj.offsetHeight 指 obj 控件自身的高度,整型,单位像素。

offsetParent offsetParent属性返回一个对象的引用,这个对象是距离调用offsetParent的元素最近的(在包含层次中最靠近的),并且是已进行过CSS定位的容器元素。 如果这个容器元素未进行CSS定位,则offsetParent属性的取值为根元素(在标准兼容模式下为html元素;在怪异呈现模式下为body元素)的引用。当容器元素的style.display 被设置为 "none"时(译注:IE和Opera除外),offsetParent属性 返回null。

句法:

parentObj = element.offsetParent

变量:

parentObj 是一个元素的引用,当前元素的偏移量在其中计算。

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...