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

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

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

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

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

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

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

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

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

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

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

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

?
1
2
3
4
5
6
var imgTitle;
if ( this .myTitle) {
   imgTitle = "<br />" + this .myTitle;
} else {
   imgTitle = "" ;
}

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

本例完整代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<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程序设计有所帮助。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值