有没有办法删除JavaScript / JQuery所做的所有CSS更改

时间:2014-12-20 13:51:00

标签: javascript jquery css

除了像下面的示例那样执行property = blank之外,有没有办法在不刷新页面的情况下删除脚本所做的所有css更改?像重新加载原始样式表的东西?

$("#div".css({property1:"", property2:""});

我目前正在研究JavaScript和jQuery,我想在我的页面上实现某种“重置”按钮,在某些部分,用户可以修改颜色和大小。

3 个答案:

答案 0 :(得分:4)

好吧,如果所有原始样式都加载在样式表中,并且所有更改都是通过jquery完成的(将更改直接应用于style属性),那么一个简单的方法是:< / p>

$('#div').attr('style','');

如果您想通过这样的修改将它应用于所有事物,那么您可以使用属性选择器:

$('[style]').attr('style','');

答案 1 :(得分:3)

如前面的答案所述,您只需使用空白覆盖style属性即可。

但是,您也可以删除它:

$("Your selector").removeAttr("style");

答案 2 :(得分:0)

如果你的元素不包含其他函数设置的任何其他内联样式,你可以在CSS样式表中设置默认样式,并删除“style”属性以删除通过JS添加的内联属性:

纯JS:

var styled = document.querySelectorAll("*[style]");
for(i=0; i<styled.length;i++) {
    styled[i].removeAttribute("style");
}

jQuery的:

$("*[style]").removeAttr("style");

说明:

这两种方法都会从文档中的所有元素中删除内联样式。

演示:

这是一个JSfiddle作为演示。