为什么第一个图片所属div的offsetLeft值为10?

要做一个鼠标滑到对应的图片,显示一个大图并随鼠标移动的效果
HTML代码:
<div id="box" class="box">
<img src="img/1.jpg" bigImg="img/11.jpg" class="img"/>
<img src="img/2.jpg" bigImg="img/22.jpg" class="img"/>
<img src="img/3.jpg" bigImg="img/33.jpg" class="img"/>
<img src="img/4.jpg" bigImg="img/44.jpg" class="img"/>
<div id="mark">
<img src="img/11.jpg" id="bigImg"/>
</div>
</div>
CSS代码:
body, div, ing {
margin: 0;
padding: 0;
}
img {
display: block;
border: none;
}
.box {
width: 450px;
margin: 20px auto;
position: relative;
}
.box img {
width: 100px;
border: 1px solid #777777;
float: left;
margin-left: 10px;
}
#mark {
position: absolute;
top: 0px;
left: 0;
width: 384px;
height: 216px;
border: 1px solid #5bc0de;
z-index: 10;
display: none;
}
#mark img {
border: none;
float: none;
margin-left: 0px;
width: 100%;
height: 100%;
}JS代码:
var box = document.getElementById("box");
var imgs = document.getElementsByClassName("img");
var mark = document.getElementById("mark");
var bigImg = document.getElementById("bigImg");
for (var i = 0; i < imgs.length; i++) {
imgs[i].onmouseenter = function (e) {
e = e || window.event;
mark.style.display = "inline-block";
bigImg.src = this.getAttribute("bigImg");
mark.style.left = e.clientX - this.offsetLeft + 5 + "px";
mark.style.top = e.clientY - this.offsetTop + 5 + "px";
};
imgs[i].onmousemove = function (e) {
e = e || window.event;
if (mark) {
mark.style.left = e.clientX - this.offsetLeft + 5 + "px";
mark.style.top = e.clientY - this.offsetTop + 5 + "px";
}
};
imgs[i].onmouseleave = function (e) {
e = e || window.event;
if (mark) {
mark.style.display = "none";
}
};
}完成的效果就是偏差非常大,后来发现是 this.offsetLeft的问题, 第一个this.offsetLeft为10,并不是到边缘的数值,求解答,谢谢。

...全文
相关推荐
div的offsetLeft与style.left区别
主要介绍了div的offsetLeft与style.left区别的相关资料,需要的朋友可以参考下
纯div+css轮播图片切换图片
纯DIV+CSS做的三种图片滚动,轮播图片 1.2.3.4图片切换 电子相册
获取offsetTop和offsetLeft值的js代码(兼容)
offsetTop和offsetLeft的值在某些特殊的情况下是会使用到的,为了实现值的准确获取,本文采用js代码实现下,有需求的朋友可以参考下哈
js 左右箭头实现图片或div内容切换
js 左右箭头实现图片或div内容切换js 左右箭头实现图片或div内容切换js 左右箭头实现图片或div内容切换js 左右箭头实现图片或div内容切换js 左右箭头实现图片或div内容切换
Jsp中如何让图片在div中居中
主要介绍了Jsp中如何让图片在div中居中的小技巧,需要的朋友可以参考下


