如何删除使用JavaScript的CSS属性?
是否有可能使用JavaScript删除元素的CSS属性? 例如我有div.style.zoom = 1.2
,现在我想通过JavaScript删除缩放属性?
由于问题是如何删除一个CSS属性,你可能希望看到下面的 @EdvinasIlčenko的答案。
但是,您也可以将CSS属性设置为默认值:
el.style.zoom = "";
现在缩放将从样式表中设置的定义(通过链接和样式标签)
这只会修改元素的样式。
removeProperty将从元素中删除样式。
例:
div.style.removeProperty( '变焦');
MDN文档页面:
CSSStyleDeclaration.removeProperty
div.style.removeProperty('zoom');
你可以使用styleSheets对象:
document.styleSheets[0].cssRules[0].style.removeProperty("zoom");
注意事项#1:您必须知道样式表的索引和规则的索引。
注意事项#2:该对象由浏览器不一致地实现; 在其中一个工作可能不适用于其他人。
您可以尝试查找具有此类的所有元素,并将“缩放”属性设置为“无”。
如果你正在使用jQuery JavaScript库,你可以使用$(".the_required_class").css("zoom","")
编辑:删除了这个陈述,事实certificate这是不正确的,正如在评论和其他答案中指出的那样,自2010年以来确实有可能。
假: 从JavaScript中修改样式表一般都不知道。
这应该做的伎俩 – 设置内联风格为正常的缩放:
$('div')。attr(“style”,“zoom:normal;”);
你也可以在jQuery中做这个,说$(selector).css("zoom", "")
element.style.height = null;
输出:
<div style="height:100px;"> // ----------> <div style="">
其实,如果你已经知道财产,这将做到这一点…
例如:
<a href="test.html" style="color:white;zoom:1.2" id="MyLink"></a> var txt = ""; txt = getStyle(InterTabLink); setStyle(InterTabLink, txt.replace("zoom\:1\.2\;",""); function setStyle(element, styleText){ if(element.style.setAttribute) element.style.setAttribute("cssText", styleText ); else element.setAttribute("style", styleText ); } /* getStyle function */ function getStyle(element){ var styleText = element.getAttribute('style'); if(styleText == null) return ""; if (typeof styleText == 'string') // !IE return styleText; else // IE return styleText.cssText; }
请注意,这只适用于内联样式…不是你通过类或类似的东西指定的样式…
其他注意:你可能不得不在这个replace语句中转义一些字符,但你明白了。
要更改元素的所有类:
document.getElementById("ElementID").className = "CssClass";
为一个元素添加一个额外的类:
document.getElementById("ElementID").className += " CssClass";
要检查一个类是否已经应用到一个元素:
if ( document.getElementById("ElementID").className.match(/(?:^|\s)CssClass(?!\S)/) )
使用jQuery( http://jquery.com ),可以通过以下方式完全删除一个元素的属性:
$('div#idOfDiv').removeAttr('class');
在运行这行代码之前,只需包含jquery源代码即可。 另外,最好在文档完全加载之后再做这样的事情,这样做的确如此:
$(document).ready(function() { $('div#idOfDiv').removeAttr('class'); });
在jquery源文件被包含之后也必须包含它。