如何使用 JavaScript 更改 CSS 显示属性
How to change CSS display property using JavaScript?
>我在使用 javascript 将 CSS 显示属性更改为"none"时遇到问题
这是我的代码:
<div class="mydiv" onClick="clickDiv1()">hello</div>
<div class="mydiv" onClick="clickDiv2()">hi</div>
<div class="mydiv" onClick="clickDiv3()">goodbye</div>
这是我的脚本:
function clickDiv1() {
alert('You clicked the first div!');
document.getElementByClassName('mydiv').style.display="none";
}
function clickDiv2() {
alert('You clicked the second div!');
document.getElementByClassName('mydiv').style.display="none";
}
function clickDiv3() {
alert('You clicked the second div!');
document.getElementByClassName('mydiv').style.display="none";
}
我想要的是,不同的div在单击它时会提醒不同的文本,但是当单击任何div时,所有div都是不可见的。
当我单击我的div 时,警报已执行,但样式不会更改。
为什么它不起作用?请帮帮我!!
区别在于当你使用 class 来document.getElementByClassName('mydiv')
时,它会返回一个数组。所以你需要使用 document.getElementByClassName('mydiv')[i]
,其中i
是数组索引。但是document.getElementById('div3')
只会给你一件。
document.getElementByClassName('mydiv')[0].style.display="none";
或
document.getElementById('div3').style.display="none";
应该工作。
用于选择 HTML 元素的正确 Javascript 方法是 getElementsByClassName()
。
这将返回 DOM 中具有该类名的所有元素的数组,您需要遍历该数组并将显示单独设置为 none
。
对于您的示例,此代码将起作用:
function hideAll() {
var elems = document.getElementsByClassName('mydiv');
for (i = 0; i < elems.length; i++) {
var elem = elems[i];
elem.style.display = 'none';
}
}
function clickDiv1() {
alert('You clicked the first div!');
hideAll();
}
function clickDiv2() {
alert('You clicked the second div!');
hideAll();
}
function clickDiv3() {
alert('You clicked the third div!');
hideAll();
}
相关文章:
- 可以转换显示属性吗?如果没有,什么'这是最好的解决方案
- hasOwnProperty-即使有属性,也不会显示属性
- 如何从django表单库中隐藏复选框,并使用Javascript切换其显示属性
- 在 jsp 中显示属性文件的值,而不使用 scriptlet
- 脚本点击Css显示属性更改不正常运行Asp.net
- 如何显示属性文件中的消息
- 谷歌地图Api在CRM Dynamics 2011 iframe"不可能使用显示属性“;消息
- 如何在springMVC中以javascript显示属性文件中的值
- 使用Javascript,如何在不同的HTML页面上更改CSS显示属性
- 如何将显示属性设置为与内联!重要的
- JavaScript 函数在尝试更改显示属性时不会生效
- CSS3 过渡淡出显示属性
- CSS 显示属性不起作用
- 无法使用 javascript 更改显示属性
- 如何使用 JavaScript 更改 CSS 显示属性
- JS - 无法更改颜色,但可以更改显示属性
- Chrome I JavaScript 关于更改 CSS 中的显示属性的问题
- ng-if :隐藏/显示属性.怎么做
- JavaScript/CSS:更改显示属性
- 使用 javascript 检索显示属性