原生js漂浮广告效果

静态页面代码

<body><div id="box"><img src="1.jpg" alt=""></div>
</body>

css样式

 *{padding: 0;margin: 0;}#box{width: 200px;height: 200px;border: solid 1px black;position: absolute;top: 0;left: 0;background: url("../../img/20160912160251944.jpg")no-repeat;}img{width: 20px;height: 20px;float: right;}

这些样式只供参考,可根据个人喜好更改

js代码区域

 //获取元素var box = document.getElementById('box');var close = document.getElementsByTagName("img")[0];//允许的left最大值var maxleft = document.documentElement.clientWidth-box.offsetWidth;//允许的top最大值var maxtop=  document.documentElement.clientHeight-box.offsetHeight;//设置一下响应式 当屏幕变化的时候获取新值window.onresize=function () {maxleft = document.documentElement.clientWidth-box.offsetWidth;maxtop=  document.documentElement.clientHeight-box.offsetHeight;}//距上距离每次变化的值  单位pxvar t=4;//距左距离每次变化的值  单位pxvar l=4;//漂浮函数function  piaofu() {//获取初始距左的距离var oldleft=box.offsetLeft;//设置新距左的距离var newleft =oldleft+l;//获取初始距上的距离var oldtop=box.offsetTop;//设置新距上的距离var newtop =oldtop+t;//如果距上的距离超过高度最大值,重新赋值为高度最大值if(newtop>maxtop){newtop=maxtop;}//如果距左的距离超过距左的最大值,重新赋值为距左最大值if(newleft>maxleft){newleft=maxleft;}//如果距上的距离小于高度最小值,重新赋值为高度最小值if(newtop<0){newtop=0}//如果距左的距离小于距左的最小值,重新赋值为距左最小值if(newleft<0){newleft=0}box.style.left=newleft+"px";box.style.top=newtop+"px";//进行判断if(newtop==maxtop ||newtop==0){t=-1*t;}if(newleft==maxleft ||newleft==0){l=-1*l;}// if(box.style.display=="none"){//     setTimeout(function () {//         box.style.display="block"//     },3000)// }}//设置定时器var timer= setInterval(piaofu,20)//当鼠标放上的时候清楚定时器box.onmouseover=function () {clearInterval(timer)}//当鼠标移走的时候定时器继续box.onmouseout=function () {timer= setInterval(piaofu,20)}//当点击关闭按钮时隐藏close.onclick=function () {box.style.display='none'}

以上这些是我个人的想法,欢迎大家进行讨论、提出意见或建议,共同进步,感谢大家的浏览!

原生js漂浮广告效果相关推荐

  1. html漂浮广告随页面移动代码,JS漂浮广告代码,慢慢漂移的广告JS代码

    JS漂浮广告代码,慢慢漂移的广告js代码,可以漂浮到任何位置,哈哈...直接贴代码,很简单. var xin = true, yin = true var step = 1 var delay = 5 ...

  2. 原生JS实现分页效果1.0

    不太完整,写的太急,等等加上完整注释,写起来还是有些难度的,写的有点水,后面再改进改进. <!DOCTYPE html> <html lang="en"> ...

  3. 原生js实现放大镜效果

    记录一次原生js实现放大镜效果. 文章目录 效果图 设计思路 基本架子 蒙版 放大效果图 逻辑设计 蒙版跟放大的图肯定要先隐藏 鼠标移入图片显示蒙版 鼠标移动蒙版跟着移动 处理边界情况 大图移动 小优 ...

  4. React.js实现原生js拖拽效果及思考

    一.起因&思路 不知不觉,已经好几天没写博客了...近来除了研究React,还做了公司官网... 一直想写一个原生js拖拽效果,又加上近来学react学得比较嗨.所以就用react来实现这个拖 ...

  5. html制作满天星,怎样使用原生js做出满天星效果

    这次给大家带来怎样使用原生js做出满天星效果,使用原生js做出满天星效果的注意事项有哪些,下面就是实战案例,一起来看一下. 代码如下://图片自己加入改变路径 html{height: 100%;} ...

  6. js漂浮广告代码(简洁!)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org ...

  7. 原生js实现如下效果: 一个按钮,点击它会弹出对话框,但5秒内再点击不会再弹出对话框。5秒后恢复正常。

    原生js实现如下效果: 一个按钮,点击它会弹出对话框,但5秒内再点击不会再弹出对话框.5秒后恢复正常. 第一种方式: 使用函数节流的方式(就是设置一个变量,来一个判断语句,判断这个变量的值.为真或假执 ...

  8. Js浮动广告效果实现

    第一种 漂浮广告 不符合W3CJavaScript漂浮广告代码,很不错,代码精简,不过一次只有漂一个,复制就能用了.希望站长朋友喜欢. <html> <head> <ti ...

  9. 原生js添加动画效果

    原生js添加动画效果 html 这个图片是使用阿里图标需要下载 <div class="content"><div class="contAnimati ...

最新文章

  1. liferay7.0 mysql_Liferay7 BPM门户开发之6: Activiti数据库换为mysql
  2. 使用virtualbox nat方式中的端口映射使用ssh服务
  3. 选择开发语言和学习的路径(这个标题可能有点不准确)
  4. Qt文档阅读笔记-FileDialog QML Type官方解析与实例
  5. linux 关闭虚拟化,虚拟化之KVM virsh常用命令篇
  6. TURBOMAIL反垃圾邮件清洁工,还你一个清爽的邮箱
  7. 计算机运算器由什么组成部分,运算器由哪些部分组成
  8. CS研究生学习阶段必读书籍
  9. Question Answering over Freebase via Attentive RNN with Similarity Matrix based论文解读
  10. 使用Huginn批量订阅微信公众号
  11. 手把手教你部署Docker(手撸官网)
  12. 华为2022数字芯片笔试题
  13. PC_ 计算机系统概述+冯诺依曼机+各种字长
  14. Ambari入门及安装
  15. 动态图片怎么做?教你一键合成gif动图
  16. Win10 C盘爆红找出edb文件146G,删除后又出现如何解决
  17. 机器学习coursera 第三章编程作业
  18. IP大混战,春节档你最看好谁?
  19. 在FreeBSD下安装subversion
  20. Qt之与游戏手柄的交互(一)

热门文章

  1. 企业信用不良对企业发展有何影响?
  2. OOA、OOD、OOP详解
  3. 彻底杀掉Linux中的Oracle进程
  4. oracle synonym
  5. Dagger 使用入门
  6. 平常写代码注意的细节part7(网络编程)P620-P635
  7. CopyFile 使用方法
  8. healthkit 之前的计步方案
  9. 我的运算放大器(三)放大与积分电路
  10. hibernate自动创建表失败