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 相关文章推荐
JavaScript 捕获窗口关闭事件
Jul 26 Javascript
IE6下通过a标签点击切换图片的问题
Nov 14 Javascript
使用js完成节点的增删改复制等的操作
Jan 02 Javascript
jquery的总体架构分析及实现示例详解
Nov 08 Javascript
JS实现一个按钮的方法
Feb 05 Javascript
jQuery 操作input中radio的技巧
Jul 18 Javascript
jQuery的deferred对象使用详解
Sep 25 Javascript
微信小程序 数组中的push与concat的区别
Jan 05 Javascript
简单实现AngularJS轮播图效果
Apr 10 Javascript
Vue侧滑菜单组件——DrawerLayout
Dec 18 Javascript
用Vue.js方法创建模板并使用多个模板合成
Jun 28 Javascript
初试vue-cli使用HBuilderx打包app的坑
Jul 17 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性能测试工具xhprof的详解
2013/06/03 PHP
php结合ACCESS的跨库查询功能
2015/06/12 PHP
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
2014/07/17 Javascript
简单实现限制uploadify上传个数
2015/11/16 Javascript
基于javascript实现仿百度输入框自动匹配功能
2016/01/03 Javascript
javascript 继承学习心得总结
2016/03/17 Javascript
Ionic快速安装教程
2016/06/03 Javascript
AngularJS 工作原理详解
2016/08/18 Javascript
很棒的一组js图片轮播特效
2017/01/12 Javascript
Vue2.0组件间数据传递示例
2017/03/07 Javascript
bootstrap弹出层的多种触发方式
2017/05/10 Javascript
详解Vue用axios发送post请求自动set cookie
2017/05/10 Javascript
详解微信小程序Radio选中样式切换
2017/07/06 Javascript
NodeJS如何实现同步的方法示例
2018/08/24 NodeJs
vue单页缓存方案分析及实现
2018/09/25 Javascript
详解关于vue2.0工程发布上线操作步骤
2018/09/27 Javascript
vue.js实现h5机器人聊天(测试版)
2020/07/16 Javascript
在vue-cli3中使用axios获取本地json操作
2020/07/30 Javascript
利用一个简单的例子窥探CPython内核的运行机制
2015/03/30 Python
Python脚本判断 Linux 是否运行在虚拟机上
2015/04/25 Python
Python使用正则表达式抓取网页图片的方法示例
2017/04/21 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
2017/12/14 Python
Python 12306抢火车票脚本 Python京东抢手机脚本
2018/02/06 Python
Python列表推导式与生成器表达式用法示例
2018/02/08 Python
Python基础之高级变量类型实例详解
2020/01/03 Python
pycharm不能运行.py文件的解决方法
2020/02/12 Python
通过案例解析python鸭子类型相关原理
2020/10/10 Python
捷克家具销售网站:SCONTO Nábytek
2020/01/02 全球购物
分公司任命书
2014/06/06 职场文书
2014年信息宣传工作总结
2014/12/18 职场文书
2015年档案管理员工作总结
2015/05/13 职场文书
2015年秋季小学开学标语
2015/07/16 职场文书
Nginx已编译的nginx-添加新模块
2021/04/01 Servers
Mysql实现主从配置和多主多从配置
2021/06/02 MySQL
vue实现登陆页面开发实践
2022/05/30 Vue.js