JavaScript中style.display获取CSS display:none失效的原因与解决
在JavaScript中直接通过element.style.display读取CSS样式表中定义的display:none值,通常返回空字符串而非none。这是因为element.style仅获取内联样式。要正确读取CSS定义的属性,应使用getComputedStyle方法获取最终计算后的样式值,从而解决通过JS控制元素显隐时的判断失效问题。
JavaScript获取CSS display:none失效的原因
现象表现为点击第二次蓝色横条时才生效,说明第一次点击时未能正确获取到foot.style.display等于"none"的状态。尽管在CSS中已经明确定义了相关样式,但JS逻辑未能按预期工作。
<style type="text/css">
#top {width:100px; background-color:#00CCFF; height:20px}
#foot {width:100px; background-color: #CCCC00; height:50px; display:none}
</style>
<script language="javascript">
<!--
function qa(){
if (foot.style.display=="none") {
foot.style.display="block";};
else {
foot.style.display="none;"}
}
-->
</script>
</head>
<body>
<div id="top" onclick="qa()"></div>
<div id="foot">
</body>
JS怎么实现页面强制刷新
2026-11-05 14:53:38
点击JS链接直接运行不下载?前端实现.js文件强制下载的三种方法
2026-11-05 12:12:23
怎么封装一个通用的JS创建元素辅助函数
2026-11-05 11:41:41
Swiper.js 怎么监听滑动结束并获取当前索引
2026-11-05 10:57:15
HTML、CSS和JS的关系:Web前端三件套怎么协作
2026-11-04 15:41:40
