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 相关文章推荐
jquery validator 插件增加日期比较方法
Feb 21 Javascript
js下写一个事件队列操作函数
Jul 19 Javascript
JQuery小知识
Oct 15 Javascript
javascript getElementsByTagName
Jan 31 Javascript
js日期联动示例
May 02 Javascript
jQuery设置指定网页元素宽度和高度的方法
Mar 25 Javascript
jQuery中值得注意的trigger方法浅析
Dec 12 Javascript
jQuery实现两列等高并自适应高度
Dec 22 Javascript
JavaScript实现省市县三级级联特效
May 16 Javascript
移动端如何用下拉刷新的方式实现上拉加载
Dec 10 Javascript
微信小程序身份证验证方法实现详解
Jun 28 Javascript
node运行js获得输出的三种方式示例详解
Jul 02 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使用base64加密解密图片示例分享
2014/01/20 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
2014/07/08 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
PHP绕过open_basedir限制操作文件的方法
2018/06/10 PHP
Javascript hasOwnProperty 方法 &amp; in 关键字
2008/11/26 Javascript
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
仿新浪微博返回顶部的jquery实现代码
2012/10/01 Javascript
javascript检查表单数据是否改变的方法
2013/07/30 Javascript
基于js与flash实现的网站flv视频播放插件代码
2014/10/14 Javascript
全面解析Bootstrap图片轮播效果
2015/12/03 Javascript
Bootstrap基本样式学习笔记之标签(5)
2016/12/07 Javascript
BootStrap组件之进度条的基本用法
2017/01/19 Javascript
Bootstrap显示与隐藏简单实现代码
2017/03/06 Javascript
ReactNative短信验证码倒计时控件的实现代码
2017/07/20 Javascript
详解在Vue中有条件地使用CSS类
2017/09/30 Javascript
vue实现条件判断动态绑定样式的方法
2018/09/29 Javascript
python实现Floyd算法
2018/01/03 Python
python3实现随机数
2018/06/25 Python
Python3数据库操作包pymysql的操作方法
2018/07/16 Python
python 实现selenium断言和验证的方法
2019/02/13 Python
Python搭建HTTP服务过程图解
2019/12/14 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
python实现跨excel sheet复制代码实例
2020/03/03 Python
Django admin管理工具TabularInline类用法详解
2020/05/14 Python
python利用opencv实现颜色检测
2021/02/23 Python
小学生班会演讲稿
2014/01/09 职场文书
说明书范文
2014/05/07 职场文书
查摆问题对照检查材料
2014/08/28 职场文书
2014年教师节演讲稿范文
2014/09/10 职场文书
公司停电通知
2015/04/15 职场文书
行为习惯主题班会
2015/08/14 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
《小小的船》教学反思
2016/02/18 职场文书
html5调用摄像头实例代码
2021/06/28 HTML / CSS
CSS实现隐藏搜索框功能(动画正反向序列)
2021/07/21 HTML / CSS
php实例化对象的实例方法
2021/11/17 PHP