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 相关文章推荐
IE 上下滚动展示模仿Marquee机制
Dec 20 Javascript
基于jQuery实现表格数据的动态添加与统计的代码
Jan 31 Javascript
检查输入的是否是数字使用keyCode配合onkeypress事件
Jan 23 Javascript
JavaScript设计模式之建造者模式介绍
Dec 28 Javascript
javascript中数组方法汇总
Jul 07 Javascript
JS Ajax请求如何防止重复提交
Jun 13 Javascript
微信小程序 参数传递详解
Oct 24 Javascript
JS打开摄像头并截图上传示例
Feb 18 Javascript
JS设置随机出现2个数字的实例代码
Jul 19 Javascript
Vue循环组件加validate多表单验证的实例
Sep 18 Javascript
微信小程序保存多张图片的实现方法
Mar 05 Javascript
vue2.0基于vue-cli+element-ui制作树形treeTable
Apr 30 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 删除无限级目录与文件代码共享
2008/11/22 PHP
PHP 显示客户端IP与服务器IP的代码
2010/10/12 PHP
PHP可变函数的使用详解
2013/06/14 PHP
PHP实现采集抓取淘宝网单个商品信息
2015/01/08 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
2015/04/08 PHP
PHP中explode函数和split函数的区别小结
2016/08/24 PHP
laravel框架 laravel-admin上传图片到oss的方法
2019/10/13 PHP
JScript中的&quot;this&quot;关键字使用方式补充材料
2007/03/08 Javascript
ext监听事件方法[初级篇]
2008/04/27 Javascript
javascript showModalDialog模态对话框使用说明
2009/12/31 Javascript
深入理解javascript动态插入技术
2013/11/12 Javascript
js中生成map对象的方法
2014/01/09 Javascript
node.js中的querystring.stringify方法使用说明
2014/12/10 Javascript
javascript跨域的方法汇总
2015/10/23 Javascript
JS函数定义方式的区别介绍
2016/03/22 Javascript
AngularJS 中文API参考手册
2016/07/28 Javascript
详解Angular.js的$q.defer()服务异步处理
2016/11/06 Javascript
jQuery实现的简单排序功能示例【冒泡排序】
2017/01/13 Javascript
Angular.JS中select下拉框设置value的方法
2017/06/20 Javascript
Angular2生命周期钩子函数的详细介绍
2017/07/10 Javascript
python中from module import * 的一个坑
2014/07/20 Python
tensorflow输出权重值和偏差的方法
2018/02/10 Python
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
详解python分布式进程
2018/10/08 Python
在django view中给form传入参数的例子
2019/07/19 Python
Python中zip()函数的简单用法举例
2019/09/02 Python
Python换行与不换行的输出实例
2020/02/19 Python
python爬虫使用正则爬取网站的实现
2020/08/03 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码
2020/11/30 HTML / CSS
捷克购买家具网站:JENA nábytek
2020/03/19 全球购物
Sony C++笔试题
2013/03/10 面试题
法院实习人员自我鉴定
2013/09/26 职场文书
毕业自我鉴定
2013/11/05 职场文书
团日活动总结书
2014/05/08 职场文书
个人总结与自我评价
2015/02/14 职场文书
应届生求职自荐信范文
2015/03/04 职场文书