JQuery鼠标移到小图显示大图效果的方法
作者:bea
本文实例讲述了JQuery鼠标移到小图显示大图效果的方法。分享给大家供大家参考。具体分析如下: 这里的显示大图功能类似上一篇《JQuery实现超链接鼠标提示效果的方法》,稍微修改一下代码,就可以做出一个图片的提示效果。 参考前面的超链接提示效果的代码,只需要将创建的div元素的代码改为: //创建 div 元素 图片提示var tooltip = "<div id="tooltip"><img src=""+ this.href +"" alt="预览图
本文实例讲述了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程序设计有所帮助。
有用 | 无用
这里的显示大图功能类似上一篇《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中的setHours()方法的使用
- JavaScript中setFullYear()方法的使用详解
- JQuery遍历DOM节点的方法
- jQuery插件animateSlide制作多点滑动幻灯片
- 简介JavaScript中的setDate()方法的使用
- JQuery实现样式设置、追加、移除与切换的方法
- 在JavaScript中操作时间之getYear()方法的使用教程
- JavaScript中getUTCSeconds()方法的使用详解
- JQuery节点元素属性操作方法
- JQuery包裹DOM节点的方法
- JQuery替换DOM节点的方法
- JavaScript中实现map功能代码分享
- JQuery复制DOM节点的方法
- JavaScript中标识符提升问题
- JQuery删除DOM节点的方法
- JQuery插入DOM节点的方法
- JQuery创建DOM节点的方法
- JQuery查找DOM节点的方法