offsetLeft 获取的是相对于父对象的左边距;
left 获取或设置相对于 具有定位属性(position定义为relative)的父对象 的左边距;
如果父div的position定义为relative,子div的position定义为absolute,那么子div的style.left的值是相对于父div的值,
这同offsetLeft是相同的;
二者的区别在于:
1.style.left返回的是字符串,如30px,offsetLeft返回的是数值30;
2.style.left是可读写的,而是offsetLeft是只读的,因此如果要改变div的位置,只能修改style.left;
3.style.left的值需要事先定义,否则取到的值为空;而且定义在css里是无法识别的,取到的值将依然为空,只有在html里定义的才有效;
——注:来自慕课上WayneJ老师讲解
时间: 2024-09-29 16:07:01