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 相关文章推荐
js滚动条回到顶部的代码
Dec 06 Javascript
javascript 常用功能总结
Mar 18 Javascript
图片img的src不变让浏览器重新加载实现方法
Mar 29 Javascript
JavaScript检测实例属性, 原型属性
Feb 04 Javascript
JS实现三级折叠菜单特效,其它级可自动收缩
Aug 06 Javascript
EasyUi combotree 实现动态加载树节点
Apr 01 Javascript
jQuery easyui刷新当前tabs的方法
Sep 23 Javascript
jQuery实现表单动态加减、ajax表单提交功能
Jun 08 jQuery
Vue验证码60秒倒计时功能简单实例代码
Jun 22 Javascript
微信小程序支付PHP代码
Aug 23 Javascript
详解Vue2.0组件的继承与扩展
Nov 23 Javascript
Postman参数化实现过程及原理解析
Aug 13 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
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
2020/07/21 PHP
全新Mac配置PHP开发环境教程
2016/02/03 PHP
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
2007/03/27 Javascript
Prototype Selector对象学习
2009/07/23 Javascript
js点击页面其它地方将某个显示的DIV隐藏
2012/07/12 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
2013/10/20 Javascript
JS控件ASP.NET的treeview控件全选或者取消(示例代码)
2013/12/16 Javascript
利用Keydown事件阻止用户输入实现代码
2014/03/11 Javascript
js常用数组操作方法简明总结
2014/06/20 Javascript
JavaScript返回上一页的三种方法及区别介绍
2015/07/04 Javascript
javascript中对Date类型的常用操作小结
2016/05/19 Javascript
jQuery实现手机自定义弹出输入框
2016/06/13 Javascript
AngularJS实用开发技巧(推荐)
2016/07/13 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
微信小程序实现列表下拉刷新上拉加载
2020/07/29 Javascript
详解vue在项目中使用百度地图
2019/03/26 Javascript
js实现继承的方法及优缺点总结
2019/05/08 Javascript
详解利用nodejs对本地json文件进行增删改查
2019/09/20 NodeJs
小程序识别身份证,银行卡,营业执照,驾照的实现
2019/11/05 Javascript
Python读写ini文件的方法
2015/05/28 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
人机交互程序 python实现人机对话
2017/11/14 Python
Python实现的双色球生成功能示例
2017/12/18 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧装饰器信号与槽详细使用方法与实例
2020/03/06 Python
Python实现猜年龄游戏代码实例
2020/03/25 Python
使用PyQt5实现图片查看器的示例代码
2020/04/21 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
美国在线印刷公司:PsPrint
2017/10/12 全球购物
银行会计职员个人的自我评价
2013/09/29 职场文书
美术指导求职信
2014/03/17 职场文书
大学生读书笔记大全
2015/07/01 职场文书
600字作文之感受大自然
2019/11/27 职场文书
JavaWeb 入门篇(3)ServletContext 详解 具体应用
2021/07/16 Java/Android