JQuery鼠标移到小图显示大图效果的方法


Posted in Javascript onJune 10, 2015

本文实例讲述了JQuery鼠标移到小图显示大图效果的方法。分享给大家供大家参考。具体分析如下:

这里的显示大图功能类似上一篇《JQuery实现超链接鼠标提示效果的方法》,稍微修改一下代码,就可以做出一个图片的提示效果。

参考前面的超链接提示效果的代码,只需要将创建的div元素的代码改为:

//创建 div 元素 图片提示
var tooltip = "<div id="tooltip"><img src=""+ this.href +"" alt="预览图"><\/div>"; 
</div>

当鼠标滑过图片后,显示就会有大图提示效果。为了使效果更为人性化,还需要为图片增加说明文字,即提示出来的大图片下面出现图片相应的介绍文字。

可以根据超链接的title属性值来获得图片相应的介绍文字,JQuery代码如下:

this.myTitle = this.title; 
this.title = "";  
var imgTitle = this.myTitle? "<br />" + this.myTitle : "";

然后将它追加到div元素中,代码如下:

// 创建 div 元素
var tooltip = "<div id='tooltip'><img src='"+ this.href +"' alt='产品预览图'/>"+imgTitle+"<\/div>";

在判断this.myTitle是否为""时,使用了三元运算。三元运算结构为:Boolean? 值1 : 值2。它的第1个参数必须为布尔值。当然三元运算也可以用“if(){ }else{ }”代替,例如:

var imgTitle; 
if (this.myTitle) { 
  imgTitle = "<br />" + this.myTitle; 
} else { 
  imgTitle = ""; 
}

这样,图片提示效果就完成了,当鼠标滑过图片时,图片会出现预览的大图,大图下面还会有介绍文字。

本例完整代码如下:

<script type="text/javascript">
//<![CDATA[
$(function(){
  var x = 10;
  var y = 20;
  $("a.tooltip").mouseover(function(e){
    this.myTitle = this.title;
    this.title = "";  
    var imgTitle = this.myTitle? "<br/>" + this.myTitle : "";
    var tooltip = "<div id='tooltip'><img src='"+ this.href +"' alt='预览图'/>"+imgTitle+"<\/div>";
    //创建 div 元素
    $("body").append(tooltip);
    //把它追加到文档中             
    $("#tooltip")
      .css({
        "top": (e.pageY+y) + "px",
        "left": (e.pageX+x) + "px"
      }).show("fast"); //设置x坐标和y坐标,并且显示
 }).mouseout(function(){
    this.title = this.myTitle;  
    $("#tooltip").remove(); //移除 
 }).mousemove(function(e){
    $("#tooltip")
      .css({
        "top": (e.pageY+y) + "px",
        "left": (e.pageX+x) + "px"
      });
  });
})
//]]>
</script>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
浅谈JavaScript函数参数的可修改性问题
Dec 05 Javascript
网页右下角弹出窗体实现代码
Jun 05 Javascript
Vue.js学习之计算属性
Jan 22 Javascript
JavaScript Canvas绘制圆形时钟效果
Aug 20 Javascript
node.js调用Chrome浏览器打开链接地址的方法
May 17 Javascript
详解使用angular的HttpClient搭配rxjs
Sep 01 Javascript
AngularJs 终极购物车(实例讲解)
Nov 08 Javascript
JavaScript体验异步更好的解决办法
Jan 08 Javascript
Vuepress 搭建带评论功能的静态博客的实现
Feb 17 Javascript
mpvue开发音频类小程序踩坑和建议详解
Mar 12 Javascript
移动端 Vue+Vant 的Uploader 实现上传、压缩、旋转图片功能
Jun 10 Javascript
layui实现左侧菜单点击右侧内容区显示
Jul 26 Javascript
JQuery实现超链接鼠标提示效果的方法
Jun 10 #Javascript
jquery序列化方法实例分析
Jun 10 #Javascript
jQuery实现dialog设置focus焦点的方法
Jun 10 #Javascript
jQuery替换textarea中换行的方法
Jun 10 #Javascript
简介JavaScript中getUTCMonth()方法的使用
Jun 10 #Javascript
JavaScript中getUTCMinutes()方法的使用详解
Jun 10 #Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
Jun 10 #Javascript
You might like
最小化数据传输――在客户端存储数据
2006/10/09 PHP
PHP 开发者该知道的 5 个 Composer 小技巧
2016/02/03 PHP
yii2中LinkPager增加总页数和总记录数的实例
2017/08/28 PHP
解决jQuery插件tipswindown与hintbox冲突
2010/11/05 Javascript
jQuery学习笔记 更改jQuery对象
2012/09/19 Javascript
JS正则验证邮箱的格式详细介绍
2013/11/19 Javascript
javascript面向对象之定义成员方法实例分析
2015/01/13 Javascript
jQuery实现仿百度帖吧头部固定导航效果
2015/08/07 Javascript
Javascript中apply、call、bind的巧妙使用
2016/08/18 Javascript
DataTables+BootStrap组合使用Ajax来获取数据并且动态加载dom的方法(排序,过滤,分页等)
2016/11/09 Javascript
页面间固定参数,通过cookie传值的实现方法
2017/05/31 Javascript
JavaScript switch语句使用方法简介
2019/12/30 Javascript
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
python3访问sina首页中文的处理方法
2014/02/24 Python
一份python入门应该看的学习资料
2018/04/11 Python
Python 数据处理库 pandas 入门教程基本操作
2018/04/19 Python
对python 各种删除文件失败的处理方式分享
2018/04/24 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
Python 中如何实现参数化测试的方法示例
2019/12/10 Python
Pandas时间序列:重采样及频率转换方式
2019/12/26 Python
python使用html2text库实现从HTML转markdown的方法详解
2020/02/21 Python
OpenCV+Python3.5 简易手势识别的实现
2020/12/21 Python
Python 内存管理机制全面分析
2021/01/16 Python
HTML5 b和i标记将被赋予真正的语义
2009/07/16 HTML / CSS
HTML5梦幻之旅——炫丽的流星雨效果实现过程
2013/08/06 HTML / CSS
Nike荷兰官方网站:Nike.com (NL)
2018/04/19 全球购物
巴西最大的玩具连锁店:Ri Happy
2020/06/17 全球购物
以下为Windows NT 下的32 位C++程序,请计算sizeof 的值
2016/12/07 面试题
.NET初级开发工程师面试题
2014/04/18 面试题
消防安全承诺书
2014/05/22 职场文书
安全环保标语
2014/06/09 职场文书
2014年最新党员对照检查材料汇总
2014/09/15 职场文书
教师师德师风自我剖析材料
2014/09/29 职场文书
幼儿园大班见习报告
2014/10/31 职场文书
2014年社区综治工作总结
2014/11/17 职场文书
2015年党员发展工作总结
2015/05/13 职场文书