Javascript 我想在按下按钮时显示一个元素。默认情况下显示元素,如何使其默认显示为“无”?
按钮的所有内容似乎都是正确的,它的工作原理与我目前想要的相反。当我加载页面时,div:myDIV就在那里,按钮会将其切换为消失和重新出现。如何使myDIV在默认情况下为none,但仍具有按钮功能作为切换Javascript 我想在按下按钮时显示一个元素。默认情况下显示元素,如何使其默认显示为“无”?,javascript,css,button,hide,Javascript,Css,Button,Hide,按钮的所有内容似乎都是正确的,它的工作原理与我目前想要的相反。当我加载页面时,div:myDIV就在那里,按钮会将其切换为消失和重新出现。如何使myDIV在默认情况下为none,但仍具有按钮功能作为切换 <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> #myDIV { width: 100%; padding
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
#myDIV {
width: 100%;
padding: 50px 0;
text-align: center;
background-color: lightblue;
margin-top: 20px;
display:none;
}
</style>
</head>
<body>
<button onclick="myFunction()">test</button>
<div id="myDIV">
This is my DIV element.
</div>
<script>
function myFunction() {
var x = document.getElementById("myDIV");
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
</script>
</body>
</html>
#myDIV{
宽度:100%;
填充:50px0;
文本对齐:居中;
背景颜色:浅蓝色;
边缘顶部:20px;
显示:无;
}
测试
这是我的DIV元素。
函数myFunction(){
var x=document.getElementById(“myDIV”);
如果(x.style.display==“无”){
x、 style.display=“block”;
}否则{
x、 style.display=“无”;
}
}
我想重点在这里
当您使用
style.display
来获取显示状态时,它无法获取css中定义的显示属性
当您使用
style.display
获取显示状态时,无法获取css中定义的显示属性您需要先获取css值,然后使用JS中的按钮切换显示值。默认情况下,建议不要在HTML上提供内联样式
函数myFunction(){
const cont=document.querySelector(“图表容器”);
常量样式=getComputedStyle(续)
const displayStyle=styles.display;
如果(displayStyle==“无”){
cont.style.display=“块”;
}否则{
cont.style.display=“无”;
}
}
const BTN=document.querySelector(“按钮”);
BTN.addEventListener('click',myFunction)代码>
.container{
背景色:#FFF;
宽度:100vw;
高度:100vh;
保证金:0;
填充:0;
显示器:flex;
}
#海图容器{
背景颜色:蓝色;
边界半径:25px;
高度:200px;
宽度:100%;
浮动:在下面;
显示:无;
}
钮扣{
宽度:50px;
高度:50px;
}
切换
您需要先获取CSS值,然后用JS中的按钮切换显示值。默认情况下,建议不要在HTML上提供内联样式
函数myFunction(){
const cont=document.querySelector(“图表容器”);
常量样式=getComputedStyle(续)
const displayStyle=styles.display;
如果(displayStyle==“无”){
cont.style.display=“块”;
}否则{
cont.style.display=“无”;
}
}
const BTN=document.querySelector(“按钮”);
BTN.addEventListener('click',myFunction)代码>
.container{
背景色:#FFF;
宽度:100vw;
高度:100vh;
保证金:0;
填充:0;
显示器:flex;
}
#海图容器{
背景颜色:蓝色;
边界半径:25px;
高度:200px;
宽度:100%;
浮动:在下面;
显示:无;
}
钮扣{
宽度:50px;
高度:50px;
}
切换
添加样式显示:无
到div chart container我已经尝试过了,这只是意味着我必须单击按钮两次才能显示div:)按钮在哪里切换它消失和重新出现?这不是一个。因此,您制作了
,而您的代码不起作用?也许您应该显示真实的代码,因为根据第一条注释添加样式会起作用(我注意到您已经更改了问题中的代码,使第一条注释看起来很荒谬,但是,注释是100%正确的)向div chart container添加样式display:none
,我已经尝试过了,这只是意味着我必须单击按钮两次才能显示div:)按钮在哪里切换它消失和重新出现?这不是一个。因此,您制作了
,而您的代码不起作用?也许您应该显示真实的代码,因为根据第一条注释添加样式会起作用(我注意到您已经更改了问题中的代码,使第一条注释看起来很荒谬,但是,注释是100%正确的)