作家
登录

JS实现悬浮移动窗口(悬浮广告)的特效

作者: 来源:www.28hudong.com 2013-03-30 00:07:57 阅读 我要评论

js方法: 复制代码 代码如下:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <title> New Document </title> <meta name="Generator" content="EditPlus"> <meta name="Author" content=""> <meta name="Keywords" content=""> <meta name="Description" content=""> <script type="text/javascript"> window.onload=function(){ //写入 var oneInner = document.createElement("div"); oneInner.setAttribute("style","background:#663398;position:absolute;width:100px;height:100px;border:solid 3px #2F74A7;cursor:pointer;"); var oneButton = document.createElement("input"); oneButton.setAttribute("type","button"); oneButton.setAttribute("value","x"); if (oneButton.style.cssFloat) { oneButton.style.cssFloat="right" } else {oneButton.style.styleFloat="right"} oneInner.appendChild(oneButton); document.body.appendChild(oneInner); //定时器 var a1a = setInterval(moves,100); //函数 var x = 10; var y = 10; function moves(){ var tops = oneInner.offsetTop var lefts = oneInner.offsetLeft if (lefts>=document.documentElement.clientWidth-oneInner.offsetWidth||lefts<=0) { x=-x } if (tops>=document.documentElement.clientHeight-oneInner.offsetHeight||tops<=0) { y=-y } tops+=y; lefts+=x; oneInner.style.top=tops+"px" oneInner.style.left=lefts+"px" } //悬停停止 oneInner.onmouseover=function(){ clearInterval(a1a); } //放手继续运动 oneInner.onmouseout=function(){ a1a =setInterval(moves,100); } //删除 oneButton.onclick=function(){ document.body.removeChild(oneInner); } } </script> </head> <body> </body></html> jquery方法: 复制代码 代码如下:<!DOCTYPE html><html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="http://www.jb51.net/workspace/js/jquery-1.7.min.js"></script> <script> $(function(){ //写入div $("<div/>",{id:"moveWindow"}).css({width:"200px",height:"200px",border:"solid 3px #2F74A7",background:"#663398",position:"absolute",cursor:"pointer"}).appendTo("body"); //写入关闭按钮 $("<div/>",{id:"removeMW"}).css({width:"20px",height:"20px",background:"red",float:"right"}).appendTo("#moveWindow"); //定时器 var move = setInterval(moves,100); var x= 10; var y= 10; function moves (){ var mw = $("#moveWindow").offset(); var lefts =mw.left; var tops = mw.top; if (lefts>=$(window).width()-$("#moveWindow").width()||lefts<=0) { x=-x } if (tops>=$(window).height()-$("#moveWindow").height()||tops<=0) { y=-y } lefts+=x; tops+=y; $("#moveWindow").offset({top:tops,left:lefts}); } //悬停停止运动 $("#moveWindow").mouseover(function(){ clearInterval(move); }); //移开鼠标后继续运动 $("#moveWindow").mouseout(function(){ move = setInterval(moves,100); }); //点击按钮关闭 $("#removeMW").click(function(){ $("#moveWindow").remove(); }); }) </script> </head> <body> </body></html> 基本思路: 1.页面加载完成之后向页面插入窗口,之后向窗口插入关闭按钮 2.使用setInterval()函数触发moves()函数开始动画 3.moves函数:首先获取当前窗口位置,之后随时间使窗口位移,每当位移到游览器边缘时反向运动 4.添加其他事件:鼠标悬停停止运动,鼠标离开继续运动,点击按钮关闭窗口 ps:不建议使用这个特效,影响用户体验 希望对你有所帮助!^_^!~~

  推荐阅读

  jQuery实现id模糊查询的小例子

eg_1. 在页面中查找某id图片集合,先放到代码: 复制代码 代码如下:<div id="cacheLayerContainer-CBS-882" > <img src="" id="CBS_1_0" style="width: 256px; height: 256px"> <img src="" id="CBS_1_1" st>>>详细阅读


本文标题:JS实现悬浮移动窗口(悬浮广告)的特效

地址:http://www.17bianji.com/kaifa2/JS/22211.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)