如果隐藏了类,那么用javascript(没有jquery)将类添加到id

时间:2017-10-13 04:07:07

标签: javascript

我是新来的,对不起,如果我对这个问题做错了。我厌倦了尝试,如果使用javascript(没有jquery)隐藏类,如何将类添加到id。这是我到目前为止所尝试的内容。



function hidekeep() {
    document.getElementById("keep-ads").style.display = "none"
}
setTimeout(function () {
    var e = document.getElementById("keep-ads"),
    t = document.getElementsByClassName("adsbygoogle");
    if(t.style.display = "none") {
        e.className += "up";
    }
}, 2e3);

.up {color:red;}
.adsbygoogle {display:none}

<div id="keep-ads">Foo1
</div>
<div class="adsbygoogle">Bar1
</div>
&#13;
&#13;
&#13;

DEMO

2 个答案:

答案 0 :(得分:0)

document.getElementsByClassName返回一个集合对象,而不是单个元素(如document.getElementById那样)。因此,当您检查t.style时,它不在那里。你会想要更像的东西:

document.getElementsByClassName("adsbygoogle").forEach(function(t) {
    if (t.style.display === 'none') e.className += 'up';
});

答案 1 :(得分:0)

在javascript中,=是一个赋值运算符,其中==是一个比较运算。

所以将你的集团改为:

setTimeout(function () {
    var e = document.getElementById("keep-ads"),
    t = document.getElementsByClassName("adsbygoogle")[0]; // assuming there's just one element with the given class name
    if(t.style.display == "none") { // changed here
        e.className += "up";
    }
}, 2e3);

<强>更新

  

如果使用javascript隐藏类,如何将类添加到id

使用element.style.display = 'none';隐藏元素并阅读元素的style.display属性。

&#13;
&#13;
function hidekeep() {
    document.getElementById("keep-ads").style.display = "none"
}
setTimeout(function () {
    var e = document.getElementById("keep-ads"),
    t = document.getElementsByClassName("adsbygoogle")[0]; // assuming there's just one element with the given class name

    if(t.style.display == 'none') { // changed here
        e.className += "up";
    }
}, 2e3);

var hideBar1 = function() {
     document.getElementsByClassName("adsbygoogle")[0].style.display = 'none';

};

document.getElementsByClassName("hide-ads")[0].addEventListener('click', hideBar1 , false);
&#13;
.up {color:red;}
&#13;
<div id="keep-ads">Foo1
</div>
<div class="adsbygoogle">Bar1
</div>

<button class="hide-ads">
HIDE
</button>
&#13;
&#13;
&#13;