javascript 问题:鼠标经过下排的文字超链接时,上排出现相应图片;鼠标移开后,变回其他图片。
大侠,小弟有个问题,想请您帮个忙指点一下。我要做一个网页,下排是5个超链接:分别是111、222、333、444、555。上排是以上超链接相对应的图片。想要的效果是:进入...
大侠,小弟有个问题,想请您帮个忙指点一下。
我要做一个网页,下排是5个超链接:分别是111、222、333、444、555。
上排是以上超链接相对应的图片。
想要的效果是:进入网页后,上排是一幅图片;当鼠标移动到下排的某个超链接上时(不点击),上排的图像变换成相对应的图片(如:移到333上时,上排出现333所对应的图片);移开鼠标后,上排的图片变回进入网页时已显示的那副图片。
上次您说用js代码调用,新建层。俺不是太懂。可否给个代码?
先谢了! 展开
我要做一个网页,下排是5个超链接:分别是111、222、333、444、555。
上排是以上超链接相对应的图片。
想要的效果是:进入网页后,上排是一幅图片;当鼠标移动到下排的某个超链接上时(不点击),上排的图像变换成相对应的图片(如:移到333上时,上排出现333所对应的图片);移开鼠标后,上排的图片变回进入网页时已显示的那副图片。
上次您说用js代码调用,新建层。俺不是太懂。可否给个代码?
先谢了! 展开
2个回答
展开全部
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
<!--
#apDiv1 {
position:absolute;
left:153px;
top:47px;
width:497px;
height:331px;
z-index:1;
}
-->
</style>
</head>
<body>
<div id="apDiv1">
<table width="493" border="1">
<tr>
<th width="326" height="170" scope="col"><img id="img1" src="" /></th>
<th width="151" scope="col" ><span id="alt">ddd</span></th>
</tr>
</table>
<p> </p><table width="495" height="92" border="1">
<tr>
<th width="485" height="86" scope="col"><span id="11" onmousemove="ydtk('11','xq03_gg01.jpg','111')">11</span> <span id="22" onmousemove="ydtk('22','','222')">22</span> <span id="33" onmousemove="ydtk('33','','333')">33</span></th>
</tr>
</table>
</div>
<script language="javascript" >
function _$(id) { return document.getElementById(id); }
function ydtk(id,tp,str){
_$(id).onmousemove=function(){
_$("img1").src=tp;
_$("alt").innerHTML=str }
_$(id).onmouseout=function(){
_$("img1").src="lx2_icon01.jpg"
_$("alt").innerHTML="ddd";
}
}
</script>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
<!--
#apDiv1 {
position:absolute;
left:153px;
top:47px;
width:497px;
height:331px;
z-index:1;
}
-->
</style>
</head>
<body>
<div id="apDiv1">
<table width="493" border="1">
<tr>
<th width="326" height="170" scope="col"><img id="img1" src="" /></th>
<th width="151" scope="col" ><span id="alt">ddd</span></th>
</tr>
</table>
<p> </p><table width="495" height="92" border="1">
<tr>
<th width="485" height="86" scope="col"><span id="11" onmousemove="ydtk('11','xq03_gg01.jpg','111')">11</span> <span id="22" onmousemove="ydtk('22','','222')">22</span> <span id="33" onmousemove="ydtk('33','','333')">33</span></th>
</tr>
</table>
</div>
<script language="javascript" >
function _$(id) { return document.getElementById(id); }
function ydtk(id,tp,str){
_$(id).onmousemove=function(){
_$("img1").src=tp;
_$("alt").innerHTML=str }
_$(id).onmouseout=function(){
_$("img1").src="lx2_icon01.jpg"
_$("alt").innerHTML="ddd";
}
}
</script>
</body>
</html>
展开全部
楼主没有完全表述清楚到底是做一个菜单,还是一个选项卡切换,看了半天,大概是你想写一个导航菜单了,抽空写了一个,先给出全部源码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1 DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>导航菜单</title>
<style type="text/css">
body{font-size:12px;}
ul,li{list-style-type:none;padding:0;margin:0;}
.main_nav{padding:2px;}
.main_nav a{display:block;line-height:28px;height:28px;padding-left:10px;overflow:hidden;}
.main_nav .navs{width:120px;}
.main_nav .navs .nav_a{background:#DDDDDD;color:#000000;text-decoration:none;}
.sub_nav{display:none;width:120px;}
.sub_nav li a {color:#FFFFFF;text-decoration:none;}
.sub_nav li a:link, .sub_nav li a:visited{background:#A0BED5;}
.sub_nav li a:hover{background:#0077BB;}
</style>
</head>
<body>
<ul class="main_nav">
<li class="navs" onmouseover="showSubNav('subNav_1');" onmouseout="hideSubNav('subNav_1');">
<a href="javascript:;" class="nav_a">我的个人信息</a>
<ul id="subNav_1" class="sub_nav">
<li><a href="#">姓名</a></li>
<li><a href="#">个人主页</a></li>
<li><a href="#">我的校内</a></li>
<li><a href="#">我的空间</a></li>
</ul>
</li>
</ul>
<script language="javascript" type="text/javascript">
function showSubNav(id){
document.getElementById(id).style.display='block';
}
function hideSubNav(id){
document.getElementById(id).style.display='none';
}
</script>
</body>
</html>
先复制下来,另存为x.htm 在浏览器打开运行一下吧, 鼠标放到 "我的个人信息" 会弹出一个下拉菜单, 鼠标放到下面的子菜单可以导航了,不会出现菜单忽然失踪了,测试浏览器(Firefox3,Opera 9.6, IE6,7,8),根据自己需要再改写吧,上面的可以说是最基本的导航菜单模型,
不过,推荐楼主用菜单生成器生成,兼容性好,有不用写代码.网上搜索一下就有了.
为什么上面的鼠标放在子菜单下,子菜单并没有消失?因为 鼠标放到子菜单上面, 由于子菜单包含在<li class="navs" 这个标签内,所以,一样会触发 onmouseover 事件,而显示子菜单,当鼠标移出后,隐藏,
如果把 <ul id="subNav_1" class="sub_nav">
<li><a href="#">姓名</a></li>
<li><a href="#">个人主页</a></li>
<li><a href="#">我的校内</a></li>
<li><a href="#">我的空间</a></li>
</ul> 这段子菜单代码放到 上面的 <li class="navs" 这个标签 外,
那么,就会出现你上述的情况,鼠标来不及点击子菜单,子菜单就消失了,
不知道你明白了没有?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1 DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>导航菜单</title>
<style type="text/css">
body{font-size:12px;}
ul,li{list-style-type:none;padding:0;margin:0;}
.main_nav{padding:2px;}
.main_nav a{display:block;line-height:28px;height:28px;padding-left:10px;overflow:hidden;}
.main_nav .navs{width:120px;}
.main_nav .navs .nav_a{background:#DDDDDD;color:#000000;text-decoration:none;}
.sub_nav{display:none;width:120px;}
.sub_nav li a {color:#FFFFFF;text-decoration:none;}
.sub_nav li a:link, .sub_nav li a:visited{background:#A0BED5;}
.sub_nav li a:hover{background:#0077BB;}
</style>
</head>
<body>
<ul class="main_nav">
<li class="navs" onmouseover="showSubNav('subNav_1');" onmouseout="hideSubNav('subNav_1');">
<a href="javascript:;" class="nav_a">我的个人信息</a>
<ul id="subNav_1" class="sub_nav">
<li><a href="#">姓名</a></li>
<li><a href="#">个人主页</a></li>
<li><a href="#">我的校内</a></li>
<li><a href="#">我的空间</a></li>
</ul>
</li>
</ul>
<script language="javascript" type="text/javascript">
function showSubNav(id){
document.getElementById(id).style.display='block';
}
function hideSubNav(id){
document.getElementById(id).style.display='none';
}
</script>
</body>
</html>
先复制下来,另存为x.htm 在浏览器打开运行一下吧, 鼠标放到 "我的个人信息" 会弹出一个下拉菜单, 鼠标放到下面的子菜单可以导航了,不会出现菜单忽然失踪了,测试浏览器(Firefox3,Opera 9.6, IE6,7,8),根据自己需要再改写吧,上面的可以说是最基本的导航菜单模型,
不过,推荐楼主用菜单生成器生成,兼容性好,有不用写代码.网上搜索一下就有了.
为什么上面的鼠标放在子菜单下,子菜单并没有消失?因为 鼠标放到子菜单上面, 由于子菜单包含在<li class="navs" 这个标签内,所以,一样会触发 onmouseover 事件,而显示子菜单,当鼠标移出后,隐藏,
如果把 <ul id="subNav_1" class="sub_nav">
<li><a href="#">姓名</a></li>
<li><a href="#">个人主页</a></li>
<li><a href="#">我的校内</a></li>
<li><a href="#">我的空间</a></li>
</ul> 这段子菜单代码放到 上面的 <li class="navs" 这个标签 外,
那么,就会出现你上述的情况,鼠标来不及点击子菜单,子菜单就消失了,
不知道你明白了没有?
参考资料: 百度一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询