[英]How can I manipulate css into a SVG
i'm trying to improve my code by assigning the css for properly: 我试图通过正确分配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');
}
Using element.className += ' hide-layer' doesn't work Using element.className += ' hide-layer' takes a while (8 secons for 1996 path elements with the same class) 使用element.className + ='hide-layer'不起作用使用element.className + ='hide-layer'需要一段时间(1996年具有相同类的path元素为8 secons)
the css class is like: css类是这样的:
.hide-layer{
visibility:hidden;
}
Hope you can help me. 希望您能够帮助我。 Thanks in advance! 提前致谢!
If you set a class on the elements you wanted to hide you could manipulate the class rule ie edit 如果在要隐藏的元素上设置类,则可以操作类规则,即编辑
.hide-layer{
visibility:hidden;
}
to become 成为
.hide-layer{
visibility:visible;
}
You can access stylesheets via 您可以通过访问样式表
document.styleSheets
If the above rule was the only rule in the only stylesheet for the page it would be 如果以上规则是页面唯一样式表中的唯一规则,则它将是
var rule = document.styleSheets[0].cssRules[0]
and 和
document.styleSheets[0].cssRules[0].style.setProperty('visibility','visible',null);
would update the visibility property in the rule. 将更新规则中的可见性属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.