我试图通过正确分配css来改进我的代码:
isChecked = jqElement.is(':checked');
type = jqElement.attr('tag');
var start = new Date().getTime();
elements = document.getElementsByClassName(type);
console.log('LAYER ' + type + ': ' + elements.length);
for (j=0; j<elements.length; j++){
element = elements[j];
if (isChecked)
element.classList.remove('hide-layer');
else
element.classList.add('hide-layer');
//element.className += ' hide-layer';
//element.className = type;
//element.setAttribute('visibility', (isChecked)? '' : 'hidden');
}
使用element.className + =&#39;隐藏层&#39;不起作用 使用element.className + =&#39;隐藏层&#39;需要一段时间(1996年路径元素的8个secons与同一个类)
css类就像:
.hide-layer{
visibility:hidden;
}
希望你能帮助我。提前谢谢!
答案 0 :(得分:1)
如果在要隐藏的元素上设置类,则可以操作类规则,即编辑
.hide-layer{
visibility:hidden;
}
成为
.hide-layer{
visibility:visible;
}
您可以通过
访问样式表document.styleSheets
如果上述规则是该页面唯一样式表中的唯一规则,则为
var rule = document.styleSheets[0].cssRules[0]
和
document.styleSheets[0].cssRules[0].style.setProperty('visibility','visible',null);
会更新规则中的visibility属性。