使图像出现,而其他图像通过单击按钮消失
Making images appear AND other images disappear with the click of a button
我的网页遇到了一些问题。我连续研究了这个话题30分钟,仍然没有找到直接的答案。
如果我单击按钮 1:
-
图像 1 可见
-
图像2 不可见
-
图像3 不可见
如果我点击按钮2:
-
图像 1 不可见
-
图像2 可见
-
图像3 不可见
如果我点击按钮3:
-
图像 1 不可见
-
图像2 不可见
-
图像3 可见
这是我的Javascript:
function rock(){
document.getElementById('image1').style.display = 'block';
}
document.getElementById('image2').style.display = 'none';
}
document.getElementById('image3').style.display = 'none';
}
function paper(){
document.getElementById('image1').style.display = 'none';
}
document.getElementById('image2').style.display = 'block';
}
document.getElementById('image3').style.display = 'none';
}
function scissors(){
document.getElementById('image1').style.display = 'none';
}
document.getElementById('image2').style.display = 'none';
}
document.getElementById('image3').style.display = 'block';
}
这是我的 HTML:
<button id="rock" onclick="rock()">Rock</button>
<button id="paper" onclick="paper()">Paper</button>
<button id="scissors" onclick="scissors()">Scissors</button>
只需使用它来隐藏它:
document.getElementById("thingid").style.visibility="hidden";
使用它来显示它:
document.getElementById("thingid").style.visibility="visible";
此页面上非常好的教程:http://www.w3schools.com/jsref/prop_style_visibility.asp
第二个建议:你可以使用jQuery来创建漂亮的过渡效果
- 为所有按钮提供 ID
- 为所有图像提供 ID
- 添加事件处理程序到每个按钮
-
像这样隐藏图像
document.getElementById("id-of-the-image").style.display = "none";
-
显示这样的图像
document.getElementById("id-of-the-image").style.display = "inline-block";
您的代码(更正)
function rock(){
document.getElementById('image1').style.display = 'block';
document.getElementById('image2').style.display = 'none';
document.getElementById('image3').style.display = 'none';
}
function paper(){
document.getElementById('image1').style.display = 'none';
document.getElementById('image2').style.display = 'block';
document.getElementById('image3').style.display = 'none';
}
function scissors(){
document.getElementById('image1').style.display = 'none';
document.getElementById('image2').style.display = 'none';
document.getElementById('image3').style.display = 'block';
}
代码的优化版本
function showImage(imageId) {
document.getElementById(imageId).style.display = 'block';
}
function hideImage() {
document.getElementById(imageId).style.display = 'none';
}
function rock(){
showImage('image1');
hideImage('image2');
hideImage('image3');
}
function paper(){
hideImage('image1');
showImage('image2');
hideImage('image3');
}
function scissors(){
hideImage('image1');
hideImage('image2');
showImage('image3');
}
相关文章:
- 使图像在单击时展开到不大于浏览器
- 复制图像路径以单击它
- 旋转和取消旋转图像单击与 javascript
- 如何在 HTML 中的图像单击上播放声音
- 在“JQuery 模式”对话框中指定图像单击侦听器
- 在图像单击时触发Brightcove视频播放,并在视频完成后将其隐藏
- 在图像单击时更改正文加载
- 在图像单击时启用 Javascript 功能
- 为什么更改图像单击在PC上不起作用
- 在页面加载时运行 Jquery 函数,而不是在图像单击时运行
- jQuery 旋转函数 - 在图像单击时指定 20% 的旋转
- Jquery 中环绕图像单击事件的链接
- jquery 'change' 事件在表单中的按钮集的图像单击时未触发
- 打开Javascript交换图像.单击
- JQuery赢得't调用图像单击
- JQuery图像单击事件不起作用
- 旋转图像单击Javascript
- 在jquery中输入类型图像单击事件
- 在没有回发的情况下打开图像单击事件中的对话框
- 更改图像单击时下拉选择的值