我想让一个图片或者是广告之类的,在我页面一开始加载时就从某一个点开始动,最好是从左上角一直往下走,碰到页面边框则反弹,以此类推。
求解!!!! 谢谢。
想让一个图片在窗口里弹动,碰到页面边框则反弹。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答
- Go 旅城通票 2015-01-01 11:25关注
DEMO
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>图片浮动</title> <style> #img{ position:absolute; } </style> </head> <body> <img src="http://avatar.csdn.net/8/A/6/2_oyljerry.jpg" width=50 height=50 id="img"> <script> //获取图片的对象 var img=document.getElementById("img"); //设置图片的起始点坐标 var x=0,y=0; //设置图片的行进速度 var xSpeed=10; //横坐标的行进速度 var ySpeed=10; //纵坐标的行进速度 //设置图片的最大移动范围 var w=Math.max(document.documentElement.clientWidth,document.body.clientWidth)-50; //横向移动的最大范围 var h=Math.max(document.documentElement.clientHeight,document.body.clientHeight)-50; //纵向移动的最大范围 window.onresize=function(){ w=Math.max(document.documentElement.clientWidth,document.body.clientWidth)-50; //横向移动的最大范围 h=Math.max(document.documentElement.clientHeight,document.body.clientHeight)-50; //纵向移动的最大范围 } function floatimg(){ //判断图片是否达到了边界 //1、如果达到了,那我们就改变图片的方向 //2、如果没有达到,设置坐标值为 起始坐标+速度 if(x>w||x<0){x=x<0?0:w;xSpeed=-xSpeed;}else x+=xSpeed; if(y>h||y<0){y=y<0?0:h;ySpeed=-ySpeed;}else y+=ySpeed; //使图片按规定坐标移动 img.style.left=x+"px"; img.style.top=y+"px"; //设置图片移动的时间间隔 setTimeout(floatimg,50); } floatimg(); </script> </body> </html>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 1
悬赏问题
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制
- ¥20 usb设备兼容性问题
- ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
- ¥15 安装svn网络有问题怎么办
- ¥15 vue2登录调用后端接口如何实现