Rumah  >  Artikel  >  hujung hadapan web  >  js的offset是什么意思及使用详解

js的offset是什么意思及使用详解

小云云
小云云asal
2018-03-27 17:01:3213150semak imbas

offset的意思为“偏离、位移”,在js中属于一个系列属性,包括有“offsetHeight”、“offsetWidth”、“offsetLeft”、“offsetTop”、“offsetParent”;它们可以用于获取元素尺寸。

js的offset是什么意思及使用详解

offset家族

1, offsetWidth offsetHeight 得到对象的宽和高(自己的宽和高)

offsetWidth = width + border + padding;
        offsetHeight = height + border + padding;
        p.style.width  只能得到行内样式的数值

2, offsetLeft和offsetTop 返回距离上级盒子(带有定位)的左边和上边的位置, 

    如果父级没有定位, 则以body为准, 这里的父级指的是所有上一级, 不仅仅是父亲, 

    offsetLeft 从父亲的padding开始算, 父亲的border不算

3, 动画缓动公式

    var start=0,  end = 0;
        setInterval(function(){
                start = start + (end - start)/10;
        }, 30);

4, offsetParent  返回对象的父级(带有定位的父级) 和parentNode类似, 没有定位时, 返回body

     区别:parentNode一定是父亲, offsetParent可以是爸爸, 爷爷等

5, offsetTop, offsetLeft和style.top, style.left的区别

    5.1 offsetTop, offsetLeft可以是没有定位的盒子距离上边或者左侧的位置

    5.2 style.top, style.left只有定位的盒子, 才有top或者left

    5.3 offsetTop返回的是数字, 而style.top返回的是字符串, 除了数字外还有单位:px

    5.4 offsetTop 只读, 而style.top可读写

    5.5 如果没有给html元素指定过top样式, 则 style.top返回的是空字符串

    5.6 style.width  只能得到行内样式的数值

相关推荐:

php中offset特征造成绕过漏洞解决方法

JS中offset和匀速动实例分析

mysql分页时offset过大的Sql优化实例分享

Atas ialah kandungan terperinci js的offset是什么意思及使用详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn