为啥找不到显示属性? (更多下文)

Posted

技术标签:

【中文标题】为啥找不到显示属性? (更多下文)【英文标题】:Why ican't it find the display property? (more below)为什么找不到显示属性? (更多下文) 【发布时间】:2021-07-06 06:37:24 【问题描述】:

我向按钮添加了一个事件监听器,它会显示 #popUpForm 的 css,但是在控制台上它什么也不记录。

标记:

<input id = "addItem" type = button value = "+">
                
<div id = "popUpForm">
    /* lot of divs*/
</div>

脚本:

const addBtn = document.querySelector('#addItem')

addBtn.addEventListener('click', function()
    console.log(document.querySelector('#popUpForm').style.display)
)

css:

#popUpForm
    width: 350px;
    height: 500px;

    display:none;  <-- looking for this

我正在使用 webpack,有可能它以某种方式弄乱了我的代码吗?任何帮助表示赞赏!

【问题讨论】:

***.com/questions/24080150/cant-get-display-attribute,在这里查看答案 您的问题得到解答了吗?如果是,请选择一个答案。如果没有,请做出相应的评论。 【参考方案1】:

element.style仅内联样式

要检查当前应用的样式,无论来源如何,请使用

window.getComputedStyle(document.querySelector('#popUpForm')).display

相反。请注意,在性能方面这是一个非常昂贵的调用,因此只有在没有更好的解决方案可用时才使用它。

话虽如此,我建议使用该作业的 API,即 hidden API,这将简化对可见性的检查

document.querySelector('#popUpForm').hidden

特别是,这使得切换可见性变得非常容易:

document.querySelector('#popUpForm').hidden = !document.querySelector('#popUpForm').hidden

【讨论】:

以上是关于为啥找不到显示属性? (更多下文)的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的注册表最后找不到Configuration文件呢?

为啥找不到我的着色器属性?

我装了IIS为啥打开http://localhost/总是找不到网页?

visio2013怎么画UML组件,为啥我找不到?

java编译 为啥显示找不到文件

为啥打开程序是总是显示“找不到所需的.DLL文件”