一、项目需求:

实现一个用于网站主页面 从窗体左上角开始飘到右下角 之后又飘到右上角 十秒之后消失的效果。

二、需求分析:

首先 应当想要漂浮的内容放在一个容器内,也就是一个DIV,设计它的样式,不管是背景图片还是文字,甚至是一段多媒体视频等。

其次 要想实现漂浮 这个DIV就不能处于文档流中 否则因为它一定会收到其他HTML内元素的影响 而不能自由移动。漂浮的本质就是

窗体中位置的改变,并且这种改变不能在瞬间完成 而是可以预定时间完成转移。

再次 在DIV移动位置过程中 当鼠标经过时应停止移动 鼠标移开移动继续

最后 移动到结束位置后div消失 漂浮结束

三、代码实现:

html页面引入CSS和JS文件 如下:

<link rel="stylesheet" type="text/css" href="css/demo.css"/>
                        <script type="text/javascript" src="js/jquery-1.8.2.min.js"></script>
                        <script type="text/javascript" src="js/demo.js"></script>

注:jquery-1.8.2.min.js为Jquery的库文件 需要读者去官网下载

html页面主要代码 如下:

<div id="d1"><a href="http://www.baidu.com"><img src="data:image/1.jpg"></a></div>

注:div中是一个带有链接的图片 点击链接到百度的首页 根据需求可任意修改图片和链接位置

样式demo.css文件中内容 如下:

#d1{
                             height:200px;
                             width:200px;
                             position:absolute;
                            }

注:position:absolute代表绝对定位 目的是使id=”d1”的div脱离文档流

JS代码文件demo.js中代码如下:

$(function(){

/*鼠标离开id="d1"的div执行以下操作*/
                          $("#d1").mouseout(function(){
                                                      $(this).animate({
                                                                  left:'800px',
                                                                  top:'500px'},10000,function(){
                                                                  $("#d1").animate({top:'0px',left:'1150px'},10000,function(){$("#d1").slideUp();});
                                                                                    });
                                               });
                   /*鼠标经过id="d1"的div时执行以下操作*/
                                               $("#d1").mouseover(function(){
                                                                $(this).stop(true);
                                                                                         });

});

注:mouseout和mouseover分别是Jquery的两个事件 用于鼠标移开和经过调用的function()方法,其中animate()为动画事件

四、总结: 

Jquery提供了丰富的内容 使我们可以不用做一个flash动画就可以实现具有动画效果的网页 ,本篇博文就是做了一个简单的漂浮效果

还有很多不足的地方 欢迎各路大神留言指正。

用CSS+Jquery实现一个漂浮的窗体的更多相关文章

  1. 一个CSS+jQuery的放大缩小动画效果

    日期: 2013年9月23日 作者:铁锚 // 今天帮朋友写了一些代码,自己觉得写着写着,好几个版本以后,有点满意,于是就贴出来. // 都是定死了的.因为需求就只有4个元素.如果是要用CSS的cla ...

  2. CSS3/jQuery自己定义弹出窗体

    简单演示一下,精简了演示效果和css样式文件,更利于在项目中的实际应用 引入style.css   index.js <!DOCTYPE HTML PUBLIC "-//W3C//DT ...

  3. 仿照jquery封装一个自己的js库(二)

    本篇为完结篇.主要讲述如何造出轮子的高级特性. 一. css方法的高级操作 先看本文第一部分所讲的dQuery css方法 //css方法 dQuery.prototype.css=function( ...

  4. 用Jquery做一个时间日期选择器

    今天我们就用Jquery做一个时间日期选择器,当打开网页时,文本框里面显示的是当前的日期,点击文本框可以出现年.月.日的下拉菜单,并且可以选择,会根据年份的选择判断是否是闰年,从而改变二月的天数,闰年 ...

  5. jquery实现一个标签图标hover到上面的时候显示tooltip

    设计图: 解决思路:1.在thumbnailbox.js这个插件中加入tags弹出框显示的内容,一开始让这些内容display:none; 然后再用css画出来一个三角形 实现方法: 知识点:Jque ...

  6. 利用js和JQuery定义一个导航条菜单

    利用js和JQuery定义一个导航条 效果: 一.html代码: <div class="Maintenance"> <div class="Title ...

  7. CSS+jQuery实现轮播

    CSS+jQuery实现轮播 CSS jQuery 前端  实现功能: 自动轮播: 鼠标放在上面停止轮播: 鼠标放在上面显示左右切换的按钮: 鼠标放在小圆圈上显示对应的图片: 轮播效果图 style. ...

  8. jQuery 开发一个简易插件

    jQuery 开发一个简易插件 //主要内容 $.changeCss = function(options){ var defaults = { color:'blue', ele:'text', f ...

  9. JMETER CSS JQUERY EXTRACTOR

    我想如果你在这里,你可能已经访问了我们关于变量提取的JMeter系列: XPath Extractor:使用XPath Expressions从XML响应中提取内容, Regexp Extractor ...

随机推荐

  1. nodejs 机制

    http://news.cnblogs.com/n/190903/ http://www.ruanyifeng.com/blog/2013/10/event_loop.html https://www ...

  2. 【CF】244C Checkposts

    题目需要求啥很明确了.主要思想是先计算机联通块,然后每个块内找到一个最小值(以及该值的次数).最小值和结果1,次数乘积为结果2.联通块tarjan可解. /* 427C */ #include < ...

  3. BZOJ1271: [BeiJingWc2008]秦腾与教学评估

    题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1271 题解: 这种题真是太神了! 只需要考虑被覆盖的次数的奇偶性,并且保证满足题意的点至多只有 ...

  4. Spark SQL利器:cacheTable/uncacheTable

    Spark相对于Hadoop MapReduce有一个很显著的特性就是“迭代计算”(作为一个MapReduce的忠实粉丝,能这样说,大家都懂了吧),这在我们的业务场景里真的是非常有用.   假设我们有 ...

  5. 数据结构(分块):[HZOI 2015]easy seq

    [题目描述] 给定一个序列,下标从0开始,分别为a0,a1,a2...an−1,有m个询问,每次给出l和r,求满足ai=aj且l<=i<=j<=r时j−i的最大值 本题强制在线,l和 ...

  6. Matlab中常用操作

    (1)换行操作: 末尾加上“...”,然后加enter:有时候多条语句重起一行,这时shift+enter >> 4*sin(0.3)*...8 (2)一些快捷键: Ctrl+R 可多行同 ...

  7. CXF Service Interceptor请求,响应报文之控制台输出

    一:定义接口 @WebService(targetNamespace = "http://www.unionpay.com/client/appprovider", name = ...

  8. CSU 1511 残缺的棋盘 第十届湖南省赛题

    题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1511 题目大意:在一个8*8的棋盘中,给你一个起点位置和一个终点位置,同时也给你一个陷阱 ...

  9. php 下载

    $file='url.xlsx'; if (file_exists(EA_DIR_DATA . $file)) {            header('Content-Description: Fi ...

  10. ngnix 配置

    #运行用户 user www-data;     #启动进程,通常设置成和cpu的数量相等 worker_processes  1; #全局错误日志及PID文件 error_log  /var/log ...