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

Javascript
JavaScript 解析Json字符串的性能比较分析代码
js 日期字符串截取分割成单个具体的日期(2009-12-30 13:28:29)
javascript 倒计时代码
javascript 语法基础 想学习js的朋友可以看看
javascript获取元素文本内容的通用函数
javascript 动态设置已知select的option的value值的代码
jquery 简单的图片展示效果
js textarea自动增高并隐藏滚动条
Javascript 中介者模式实例
textbox 在光标位置插入字符功能的js实现(兼容ie,firefox)
jQuery Attributes(属性)的使用(二、类篇)
Javascript document.referrer判断访客来源网址
[原创]javascript 移动鼠标得到单元格所在table表中的rowIndex位置[兼容ie,firefox]
javascript获得光标所在的文本框(text/textarea)中的位置
event.srcElement 用法笔记e.target
javascript 导出数据到Excel(处理table中的元素)
javascript DOM操作之动态删除TABLE多行
Javascript在IE或Firefox下获取鼠标位置的代码
Javascript 多浏览器兼容性问题及解决方案
让div层随鼠标移动的实现代码 ie ff

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 167 ::
收藏到网摘: 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的需要多多注意细节,这个实在是太重要了,一不小心就会出错,最糟糕的是不知道错在哪里。