JavaScript:我的代码中有什么意思意味着第二个图像只显示一纳秒

JavaScript:我的代码中有什么意思意味着第二个图像只显示一纳秒,javascript,Javascript,我正在使用一个函数HideFrame来隐藏/显示两个iframe的左侧。onclick()事件使用按钮image1和image2调用该函数 不幸的是,当我单击image1隐藏左侧帧时,image2仅显示一纳秒,然后image1再次显示 我做错了什么 我只是个初学者,所以对我放松点 function HideFrame() { var fr = window.top.document.getElementById ("body_left"); var fs = window.top.documen

我正在使用一个函数HideFrame来隐藏/显示两个iframe的左侧。onclick()事件使用按钮image1和image2调用该函数

不幸的是,当我单击image1隐藏左侧帧时,image2仅显示一纳秒,然后image1再次显示

我做错了什么

我只是个初学者,所以对我放松点

function HideFrame() {
var fr = window.top.document.getElementById ("body_left");
var fs = window.top.document.getElementById ("body_right");
var img1 = document.getElementById("image1");
var img2 = document.getElementById("image2");


if(fr.style.width=="33.5%") {
fr.style.width="0%";
fs.style.width="99.5%";
img1.style.display="none"; 
img2.style.display="inline";


}
else {
fr.style.width="33.5%";
fs.style.width="65.8%";
img1.style.display="inline"; 
img2.style.display="none";

}
}

<input type="image" src="./hideframe.png"  id="image1"
style="display:inline"              
title="Hide/show left panel" onclick="HideFrame()"/>

<input type="image" src="./showframe.png"  id="image2"  style="display:none"
title="Hide/show left panel" onclick="HideFrame()"/>
函数HideFrame(){
var fr=window.top.document.getElementById(“body_left”);
var fs=window.top.document.getElementById(“body_right”);
var img1=document.getElementById(“image1”);
var img2=document.getElementById(“image2”);
如果(fr.style.width==“33.5%”){
fr.style.width=“0%”;
fs.style.width=“99.5%”;
img1.style.display=“无”;
img2.style.display=“inline”;
}
否则{
fr.style.width=“33.5%”;
fs.style.width=“65.8%”;
img1.style.display=“inline”;
img2.style.display=“无”;
}
}

单击图像提交您的页面,这将导致页面重新加载,并且图像1再次可见。
从HideFrame返回false将阻止这种情况发生。

纳秒是10^(-9)秒(十亿分之一秒)。我不确定人眼是否能在一纳秒内看到闪过的东西。当然,我是在夸大事实。@999999没有人说OP是人类的。有一秒钟我还以为我还在使用reddit!表单上没有提交操作,所以我不认为这有什么关系,只要有表单就行。请参阅示例。
的操作方式与
@JamesWood完全相同。有关切换两个图像的更新方式,请参阅(使用jQuery)