当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript 鼠标悬浮图片显示原图 移出鼠标后原图消失(多图)

Javascript
web开发设计师比较费解的JavaScript
jQuery教程:整理的几个常见的初学者问题
免费资源:7个效果非常棒的jQuery 3D效果插件
JavaScript教程:编写匿名函数的几种方法
jQuery教程:jQuery的核心
jQuery教程:jQuery核心方法的使用
webjx收集45个jQuery导航插件和教程
30个气泡悬浮框(Tooltip)的jQuery插件
Jetpack扩展案例:Gmail邮件提醒功能
非常出色的jQuery运动特效可以和Flash媲美
ImagesLazyLoad 图片延迟加载效果
收集国外的14个图片放大编辑的jQuery插件
修改和创建DOM节点两种方式的4种优化方案
jQuery.Switchable整合插件用途介绍
提高Textarea操作性能优秀的jQuery插件
WEBJX收集12个非常有创意的JavaScript小游戏
Javascript教程:关于深入了解JS的几个问题

Javascript 中的 javascript 鼠标悬浮图片显示原图 移出鼠标后原图消失(多图)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 141 ::
收藏到网摘: n/a

其实我想实现的只是大图预览,不需要太复杂。后来,在原来有的javascript资料里找到这个:)“JavaScript网页设计300例.chm”, 从里面找到了类似的下拉菜单的例子修改了一下,以实现这个功能。 具体用法是这样的:
将Javascript代码放到</body>前(将脚本代码放在页面底端有助于提高页面速度,但是我现在还没有切身的体会)
复制代码 代码如下:

<script language=JavaScript>
function mouseOutPic() //当鼠标移出时,隐藏原图
{
if(window.event.toElement.id!="img000") bigPic.style.visibility = "hidden";
//如果鼠标不在img000上的话,将这个区域隐藏
}
function mouseOverPic(imgSrc) //当鼠标移上小图时,显示原图
{
var seeBig = document.getElementById("bigPic"); //得到将要显示原图区域的div element
var newImg = document.createElement("img"); //新建一个img element,将原图的src赋给这个element
newImg = "<img src=\'" + imgSrc + "\'/>"; //注意这里,是为整个element赋值,我在这个小问题上还花了挺多时间
//alert(imgSrc);
seeBig.innerHTML = newImg; //将原图赋给要显示的区域
}
</script>

下面是HTML代码:
复制代码 代码如下:

<!--下面这个ID是img000的element是略缩图,鼠标悬停在它上面即出现原图-->
<!--onmouseover方法中调用了mouseOverPic函数(见上面),传给它的参数是原图的URL-->
<!--调用mouseOverPic之后,将原图显示区域设为可见-->
<img id="img000" src="images/general/emailAt.jpg" onmouseover="mouseOverPic('images/general/usc_badge.jpg'); bigPic.style.visibility='visible'" onmouseout="mouseOutPic()">
<!--页面初始化的时候,原图显示区域是隐藏的-->
<div id="bigPic" style="visibility:hidden;">
</div>

上面这个代码没有控制原图出现的位置,如果涉及到靠近窗口边缘的位置的话会用到offsetLeft等属性。
仔细想想,其实这个也蛮简单的。写Javascript的需要多多注意细节,这个实在是太重要了,一不小心就会出错,最糟糕的是不知道错在哪里。