我需要jQuery hide()的javascript等价物。以下陈述的等效javascript是什么
{{1}}
答案 0 :(得分:2)
在所有现代浏览器以及IE8上,您都可以使用querySelectorAll
来完成此操作,您经常会将其与Array.prototype.forEach
或Array.prototype.slice
结合使用:
Array.prototype.forEach.call(document.querySelectorAll(".myContent"), function(el) {
el.style.display = "none";
});
它几乎受到普遍支持,稍微比getElementsByClassName
更多,而IE8并不支持。 (Array.prototype.forEach.call
部分是为了给我们提供一种循环结果的便捷方式。)
在适当的现代浏览器(或使用垫片)上,您可以将其与Array.from
结合使用:
Array.from(document.querySelectorAll(".myContent")).forEach(function(el) {
el.style.display = "none";
});
或者从技术上讲,你可以这样做:
Array.from(document.querySelectorAll(" .myContent"),function(el){ el.style.display =" none&#34 ;; });
...因为Array.from
接受映射函数。
在任何一种情况下,为了简洁,你可能想给自己一个包装函数。
如果您只需要隐藏第一个元素,那就是querySelector
:
// Assumes there *will* be a match, throws error if not
document.querySelector(".myContent").style.display = "none";
或
// Doesn't make that assumption
var el = document.querySelector(".myContent");
if (el) {
el.style.display = "none";
}
答案 1 :(得分:0)
cassandra.yaml
用该类隐藏所有内容,不使用jQuery。