head.html怎么控制list.html内的div的显隐







head.html
页1
页2
页3

list.html

1
2
3

function changeList(id){
//id:list.html内div的id
}

点击相应链接后,ind bm edm 其中一个显示,其他两个隐藏。

方法changeList可以怎么写?

[code="js"]
function changeList(id){
var f=$(window.parent.frames[ "list_frame"].document);
alert(f);

f.find("div[id='"+id+"']").show();
//f.find("div[id='"+id+"']").hide();

}
[/code]

var md=window.parent.frames[ "list_frame"].document;
md.getElementById("index_list").style.display=none;

希望对你有用,注意拼写。

[code="js"]function changeList(id,isShow){
//id:list.html内div的id
//isShow:对应div的display值,inline或none

var md=window.parent.frames[ "list_frame"].document;
md.getElementById(id).style.display=isShow;

} [/code]

希望采纳

比如你是要点击的那个隐藏那么你这样:

[code="js"]function changeList(id){
var ml={"ind","bm","edm"};
var md=window.parent.frames[ "list_frame"].document;
md.getElementById(id).style.display="";
for(var i=0;i<ml.length;i++){
if(ml[i]!=id){
md.getElementById(id).style.display=none;

}
}
} [/code]

数组声明错了 是这样

[code="js"]
var ml=["ind","bm","edm"];

[/code]

不好意思 呵呵

浏览器不兼容也很正常,我们一般用jquery,这个可以跨平台,现在浏览器太多了,跨平台还得查很多api的。

不是 我刚才也在网上搜了一下Chrome的一些信息,确实和IE 火狐们格格不入。
你用jquery来做有可能是好的 但是也不一定 jquery也不是100%兼容。

不过我那个方法应该是大部分没问题咯。

搞定了没有 IE和火狐下?

[code="js"]function changeList(id){
var f=$(window.parent.frames[ "list_frame"].document);
alert(f);

f.getElementById(id).style.display="inline";
} [/code]

没效果的意思是不隐藏还是不显示

为什么改成toggle

我蛋疼了 哥你帮我找个大夫吧 哈哈。

我给你的实例代码 你现在ie下跑通 就有思路了 我只是给你一个思路 可能代码没写全, 你可以举一反三。