You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击Font Awesome的fa-plus-square图标无法切换#addPost div显隐问题排查

故障根因

你写的DOM元素获取方法存在拼写错误:
JS代码里的document.getElementsById是错误写法,正确的API是document.getElementById,注意Element为单数形式,不要多余的s。ID在HTML文档中是唯一标识,该方法只会返回单个元素,你多写了s导致始终无法获取到addPost元素,后续的显隐逻辑自然无法执行。

修正后的JS代码

function showPost(){
    // 修正方法名拼写错误
    let add = document.getElementById("addPost")
    if (add.style.display === "none" ){
        add.style.display = "block"
    } else {
        add.style.display = "none"
    }
}

补充注意事项

如果你的addPost初始显隐状态是通过CSS类设置(而非行内style属性声明display值),首次判断add.style.display会拿到空字符串,导致逻辑不符合预期,这种情况可以改为读取计算后样式:

function showPost(){
    let add = document.getElementById("addPost")
    const computedStyle = window.getComputedStyle(add)
    if (computedStyle.display === "none" ){
        add.style.display = "block"
    } else {
        add.style.display = "none"
    }
}

更推荐的做法是提前定义好控制隐藏的CSS类,通过切换类名实现显隐,可维护性更高:

.hidden {
    display: none !important;
}
function showPost(){
    let add = document.getElementById("addPost")
    add.classList.toggle('hidden')
}

内容的提问来源于stack exchange,提问作者user16569672

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 13:57:01