利用js获取滚动条滚动距离,实现图片固定在屏幕的某个位置
思路:
1.获取对象距离顶部和左侧的距离;
2.获取元素对象;
3.当滚动条滚动时获取滚动条滚动的距离;
4.滚动条滚动时执行函数:对象距离顶部 / 左侧的距离变为原本距离顶部 / 左侧的距离+滚动条滚动像素数。
html代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="left">
<img src="images/z1.jpg" alt=""/>
</div>
<div id="right">
<img src="images/z2.jpg" alt=""/>
</div>
</body>
</html>
css代码:
*{
margin: 0;
padding: 0;
}
body{
width: 2000px;
height: 2000px;
}
.left{
position: absolute;
width: 110px;
height: 110px;
top: 100px;
left: 50px;
}
.right{
position: absolute;
width: 110px;
height: 110px;
top: 100px;
left: 1360px;
}
js代码:
var leftT;//左侧p距离顶部距离
var leftL;//左侧p距离左侧距离
var rightT;//右侧p距离顶部距离
var rightL;//右侧p距离左侧距离
var objLeft;//左侧p文档对象
var objRight;//右侧p文档对象
function place(){
objLeft=document.getElementById("left");
objRight=document.getElementById("right");
leftT=document.defaultView.getComputedStyle(objLeft,null).top;
leftL=document.defaultView.getComputedStyle(objLeft,null).left;
rightT=document.defaultView.getComputedStyle(objRight,null).top;
rightL=document.defaultView.getComputedStyle(objRight,null).left;
}
//获取滚动条滚动的像素数
function move(){
var scrollT=document.documentElement.scrollTop;
var scrollL=document.documentElement.scrollLeft;
//设置左侧p距离顶部的像素
objLeft.style.top=parseInt(leftT)+scrollT+"px";
objLeft.style.left=parseInt(leftL)+scrollL+"px";
objRight.style.top=parseInt(rightT)+scrollT+"px";
objRight.style.left=parseInt(rightL)+scrollL+"px";
}
window.onload=place;
window.onscroll=move;
相关推荐:【JavaScript视频教程】
以上就是利用js实现图片固定在屏幕的某个位置!的详细内容,转载自php中文网
发表评论 取消回复