jQuery鼠标悬浮链接弹出跟随图片实例代码


Posted in Javascript onJanuary 08, 2016

本文章介绍了一种比较常用的效果,那就是当鼠标滑过链接的时候,能够出现跟随鼠标指针移动的图层,在实际应用中,一般是对于链接的一些说明文字或者图片等等,下面是代码实例:

<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312">
<title>三水点靠木</title>
<style type="text/css">
body{
 margin:0;
 padding:40px;
 background:#fff;
 font:80% Arial, Helvetica, sans-serif;
 color:#555;
 line-height:180%;
}
a{
 text-decoration:none;
 color:#f30; 
}
p{
 clear:both;
 margin:0;
 padding:.5em 0;
}
img{border:none;}
#screenshot{
 position:absolute;
 border:1px solid #ccc;
 background:#333;
 padding:5px;
 display:none;
 color:#fff;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
this.screenshotPreview=function(){ 
 xOffset = 10;
 yOffset = 30;
 $("a.screenshot").hover(function(e){
 this.t = this.title;
 var c = (this.t != "") ? "<br/>" + this.t : "";
 $("body").append("<p id='screenshot'><img src='"+this.rel+"' />"+c+"</p>");   
 $("#screenshot")
 .css("top",(e.pageY - xOffset) + "px")
 .css("left",(e.pageX + yOffset) + "px")
 .fadeIn("fast");  
 },
 function(){
 this.title = this.t; 
 $("#screenshot").remove();
 }); 
 $("a.screenshot").mousemove(function(e){
 $("#screenshot")
 .css("top",(e.pageY-xOffset)+"px")
 .css("left",(e.pageX+yOffset)+"px");
 }); 
};
$(document).ready(function(){
 screenshotPreview();
});
</script>
</head>
<body>
<a href="#" class="screenshot" title="蚂蚁部落" rel="mytest/demo/thesmall.jpg">蚂蚁部落</a>欢迎您
</body>
</html>

效果图:

jQuery鼠标悬浮链接弹出跟随图片实例代码

以上代码实现了我们的要求,下面简单介绍一下实现过程:
代码注释:
1.this.screenshotPreview=function(){ },声明一个函数用来实现跟随效果,在本效果中,this其实是可以省略,它指向window。
2.xOffset=10,声明一个变量,用来规定鼠标指针距离弹出图片的横向距离。
3.yOffset=30,声明一个变量,用来规定鼠标指针距离弹出图片的纵向距离。
4.$("a.screenshot").hover(function(e){},function(e){}),规定当鼠标移到链接和离开链接所要执行的函数。
5.this.t = this.title将链接的title属性值赋值给t属性,这里的this是指向当前鼠标悬浮的链接对象。
6.var c = (this.t != "") ? "<br/>" + this.t : "",如果this.t不为空,也就是存在title属性值,那么插入一个换行符并且连接当前标题内容,否则将c设置为空。
7.$("body").append("<p id='screenshot'><img src='"+ this.rel +"'/>"+ c +"</p>"),将图片和相关说明添加到body。
8.$("#screenshot").css("top",(e.pageY-xOffset)+"px").css("left",(e.pageX+yOffset)+"px").fadeIn("fast"),设置p元素的top和left属性值,并且采用淡入效果展现。
9.this.title=this.t,将title内容赋值给this.title,其实不要这一句也没有任何问题,有点多余。
10.$("#screenshot").remove(),移出p元素。
11.$("a.screenshot").mousemove(function(e){}),用来设置当鼠标指针移动时,图片能够跟随。
12.$("#screenshot").css("top",(e.pageY-xOffset)+"px") .css("left",(e.pageX+yOffset)+"px"),设置p元素的top和left属性值,能够实现跟随效果。

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
jQuery获取Select选择的Text和Value(详细汇总)
Jan 25 Javascript
js中arguments,caller,callee,apply的用法小结
Jan 28 Javascript
jquery form表单序列化为对象的示例代码
Mar 05 Javascript
原生javascript实现简单的datagrid数据表格
Jan 02 Javascript
jquery带翻页动画的电子杂志代码分享
Aug 21 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
Oct 10 Javascript
原生js代码实现图片放大境效果
Oct 30 Javascript
Javascript仿京东放大镜的效果
Mar 01 Javascript
NW.js 简介与使用方法
Feb 01 Javascript
用react-redux实现react组件之间数据共享的方法
Jun 08 Javascript
echarts.js 动态生成多个图表 使用vue封装组件操作
Jul 19 Javascript
JavaScript canvas实现雨滴特效
Jan 10 Javascript
javascript中select下拉框的用法总结
Jan 07 #Javascript
详解JS中Array对象扩展与String对象扩展
Jan 07 #Javascript
js创建对象的方法汇总
Jan 07 #Javascript
JavaScript截取、切割字符串的技巧
Jan 07 #Javascript
js确认框confirm()用法实例详解
Jan 07 #Javascript
实例讲解jquery与json的结合
Jan 07 #Javascript
javascript仿百度输入框提示自动下拉补全
Jan 07 #Javascript
You might like
无需重新编译php加入ftp扩展的解决方法
2013/02/07 PHP
Smarty foreach控制循环次数的实现详解
2013/07/03 PHP
php中将数组转成字符串并保存到数据库中的函数代码
2013/09/29 PHP
php学习笔记之基础知识
2014/11/08 PHP
使用PHP把HTML生成PDF文件的几个开源项目介绍
2014/11/17 PHP
php简单实现发送带附件的邮件
2015/06/10 PHP
javascript 类型判断代码分析
2010/03/28 Javascript
jquery animate图片模向滑动示例代码
2011/01/26 Javascript
javascript检查表单数据是否改变的方法
2013/07/30 Javascript
超炫的jquery仿flash导航栏特效
2014/11/11 Javascript
jQuery实现表单步骤流程导航代码分享
2015/08/28 Javascript
老生常谈JavaScript数组的用法
2016/06/10 Javascript
全面了解JavaScirpt 的垃圾(garbage collection)回收机制
2016/07/11 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
Vue监听数据对象变化源码
2017/03/09 Javascript
JavaScript限制在客户区可见范围的拖拽(解决scrollLeft和scrollTop的问题)(2)
2017/05/17 Javascript
如何在Vue中使用CleaveJS格式化你的输入内容
2018/12/14 Javascript
JS中==、===你分清楚了吗
2020/03/04 Javascript
python通过pil为png图片填充上背景颜色的方法
2015/03/17 Python
Python求导数的方法
2015/05/09 Python
python 函数传参之传值还是传引用的分析
2017/09/07 Python
python3实现跳一跳点击跳跃
2018/01/08 Python
Python中协程用法代码详解
2018/02/10 Python
python tkinter图形界面代码统计工具(更新)
2019/09/18 Python
python进程的状态、创建及使用方法详解
2019/12/06 Python
Python导入数值型Excel数据并生成矩阵操作
2020/06/09 Python
CSS3制作酷炫的条纹背景
2017/11/09 HTML / CSS
Html5 new XMLHttpRequest()监听附件上传进度
2021/01/14 HTML / CSS
英国、欧洲和全球租车服务:Avis英国
2016/08/29 全球购物
农业大学毕业生的个人自我评价
2013/10/11 职场文书
监理员的岗位职责
2013/11/13 职场文书
销售经理工作职责
2014/02/03 职场文书
活动宣传策划方案
2014/05/23 职场文书
恰同学少年观后感
2015/06/08 职场文书
爱国教育主题班会
2015/08/14 职场文书
创业计划书之儿童理发店
2019/09/27 职场文书