style.display="block" 和frame的问题

甘泉123 2010-06-10 11:57:31
请教各位高手,我有一个frame框架的网页,左边是菜单,右边是显示的网页
显示一直都正常,点了左边的链接,新页面都是在右边出来
但是,右边有一个页我用javascript 控制了几个表格显示和隐藏,只要这个脚本执行过之后,再点框架左边的链接,就全都打开新窗口,很郁闷~

请各位高手帮帮忙,谢谢


<SCRIPT language=JavaScript>
function hideAll()
{
document.getElementById("jz").style.display="none";
document.getElementById("gn").style.display="none";
document.getElementById("ys").style.display="none";
document.getElementById("al").style.display="none";
document.getElementById("jzi").style.background="url(../images2/bgbl.gif)";
document.getElementById("gni").style.background="url(../images2/bgbl.gif)";
document.getElementById("ysi").style.background="url(../images2/bgbl.gif)";
document.getElementById("ali").style.background="url(../images2/bgbl.gif)";
}

function showFun(id)
{
if(id==1) name="jz";
if(id==2) name="gn";
if(id==3) name="ys";
if(id==4) name="al";
hideAll();
var imgname=name+"i";
//var imgurl="g"+id+"1.gif";
var imgurl="bggr.gif";
document.getElementById(name).style.display="block";
document.getElementById(imgname).style.background="url(../images2/"+imgurl+")";
}
</script>
...全文
178 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
lzzhong9910 2010-06-11
  • 打赏
  • 举报
回复
没做过
学习了
浪尖赏花 2010-06-10
  • 打赏
  • 举报
回复
没遇到过,从代码上看应该不会影响左侧菜单的打开效果
xk1126 2010-06-10
  • 打赏
  • 举报
回复
我试了很奇怪!~
甘泉123 2010-06-10
  • 打赏
  • 举报
回复
自己搞定了
在function showFun(id)里边加了一句:
var name = "";
唉~
relax19830426 2010-06-10
  • 打赏
  • 举报
回复
以前也遇到过这样的问题 后来不知道怎么就再也没碰到过了。JS没有问题,试试给每个页面加标准引用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 或者看看用的还是IE6吗 如果是就升级下吧。也是猜想 嫌麻烦就不用理我。
sclc_2008 2010-06-10
  • 打赏
  • 举报
回复
你用排除法试试,把js里面的脚本部分注释掉,看看具体是哪里问题
甘泉123 2010-06-10
  • 打赏
  • 举报
回复
哪位天使大哥给指条路呀~呵呵
甘泉123 2010-06-10
  • 打赏
  • 举报
回复
有想试试的哥们,可以用下边的代码试试,这个就是框架里右边网页的代码



<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">

<SCRIPT language=JavaScript>
function hideAll()
{
document.getElementById("jz").style.display="none";
document.getElementById("gn").style.display="none";
document.getElementById("ys").style.display="none";
document.getElementById("al").style.display="none";
document.getElementById("jzi").style.background="url(../images2/bgbl.gif)";
document.getElementById("gni").style.background="url(../images2/bgbl.gif)";
document.getElementById("ysi").style.background="url(../images2/bgbl.gif)";
document.getElementById("ali").style.background="url(../images2/bgbl.gif)";
}

function showFun(id)
{
if(id==1) name="jz";
if(id==2) name="gn";
if(id==3) name="ys";
if(id==4) name="al";
hideAll();
var imgname=name+"i";
//var imgurl="g"+id+"1.gif";
var imgurl="bggr.gif";
document.getElementById(name).style.display="block";
document.getElementById(imgname).style.background="url(../images2/"+imgurl+")";
}

</script>

</HEAD>
<BODY>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td valign="top"><table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="6" height="26" valign="bottom" background="../images2/bgbl.gif"></td>
<td height="26" align="center" background="../images2/bggr.gif" id="jzi" style="CURSOR: hand" onMouseOver="showFun(1)">111</td>
<td height="26" align="center" background="../images2/bgbl.gif" id="gni" style="CURSOR: hand" onMouseOver="showFun(2)">222</td>
<td height="26" align="center" background="../images2/bgbl.gif" id="ysi" style="CURSOR: hand" onMouseOver="showFun(3)">333</td>
<td height="26" align="center" background="../images2/bgbl.gif" id="ali" style="CURSOR: hand" onMouseOver="showFun(4)">444</td>
<td width="6" height="26" valign="bottom" background="../images2/bgbl.gif"></td>
</tr>
</table></td>
</tr>
<tr>
<td height="99" valign="top"><table id="jz" width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="71">111</td>
</tr>
</table>
<table id="gn" width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="DISPLAY: none">
<!-- style="DISPLAY: none"-->
<tr>
<td>222</td>
</tr>
</table>
<table id="ys" width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="DISPLAY: none">
<!-- style="DISPLAY: none" -->
<tr>
<td>444</td>
</tr>
</table>
<table id="al" width="100%" border="0" align="center" cellpadding="0" cellspacing="0" style="DISPLAY: none">
<!-- style="DISPLAY: none" -->
<tr>
<td>333</td>
</tr>
</table></td>
</tr>
</table>
</BODY></HTML>


甘泉123 2010-06-10
  • 打赏
  • 举报
回复
楼上的哥们,这个我知道啊,而且我也是这么做的
网页刚打开的时候一切正常,但只要在右边的网页里执行了上边的代码
左边所有的链接就都变成在新窗口打开了,呵呵
hoojo 2010-06-10
  • 打赏
  • 举报
回复
只要左边的窗口打开的链接目标设置了在右边打开就没有问题。
左:
<a href="a.html" target="main">open</a>
main是iframe的name
右:
<iframe name="main"/>
不知道你是什么情况,怪!
甘泉123 2010-06-10
  • 打赏
  • 举报
回复
或者能否反过来想想,在右边做了什么事,会导致左边的菜单链接打开新窗口呢?
改变右侧框架的名称?
甘泉123 2010-06-10
  • 打赏
  • 举报
回复
是啊,呵呵,真的很奇怪~
1. HTML对象获取问题 3 2. const问题 3 3. event.x与event.y问题 3 4. window.location.href问题 3 5. frame问题 3 6. 模态和非模态窗口问题 3 7. firefox与IE的父元素(parentElement)的区别 3 8. document.formName.item(”itemName”) 问题 3 9. 集合类对象问题 3 10. 自定义属性问题 3 11. input.type属性问题 3 12. event.srcElement问题 3 13. body载入问题 3 14. 事件委托方法 3 15. Table操作问题 3 16. 对象宽高赋值问题 3 Ø CSS 3 1. cursor:hand VS cursor:pointer 3 2. innerText在IE中能正常工作,但在FireFox中却不行. 3 3. CSS透明 3 4. css中的width和padding 3 5. FF和IE BOX模型解释不一致导致相差2px 3 6. IE5 和IE6的BOX解释不一致 3 7. ul和ol列表缩进问题 3 8. 元素水平居中问题 3 9. Div的垂直居中问题 3 10. margin加倍的问题 3 11. IE与宽度和高度的问题 3 12. 页面的最小宽度 3 13. DIV浮动IE文本产生3象素的bug 3 14. IE捉迷藏的问题 3 15. float的div闭合;清除浮动;自适应高度 3 16. 高度不适应 3 17. IE6下图片下有空隙产生 3 18. 对齐文本与文本输入框 3 19. LI中内容超过长度后以省略号显示 3 20. 为什么web标准中IE无法设置滚动条颜色了 3 21. 为什么无法定义1px左右高度的容器 3 22. 链接(a标签)的边框与背景 3 23. 超链接访问过后hover样式就不出现的问题 3 24. FORM标签 3 25. 属性选择器(这个不能算是兼容,是隐藏css的一个bug) 3 26. 为什么FF下文本无法撑开容器的高度 3

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧