如何通过jquery判断类属性的值?

如何通过jquery判断类属性的值?,jquery,css,class,Jquery,Css,Class,我有一个元素和一个类,这个类有一个设置的宽度。后来我用$('#elm').width(100)更改宽度;现在,甚至以后,我想回到原始值。有没有一种方法可以从类定义本身获取原始值,而不是用我需要的值存储一堆全局值 谢谢, Justin不是来自通过JS显式设置宽度的同一元素;但是你可以创建一个新元素,给它一个类,看看它有多宽 例如: $('#elem').width(100); alert($('#elem').width()); // this will return 100, no matter

我有一个元素和一个类,这个类有一个设置的宽度。后来我用$('#elm').width(100)更改宽度;现在,甚至以后,我想回到原始值。有没有一种方法可以从类定义本身获取原始值,而不是用我需要的值存储一堆全局值

谢谢,
Justin不是来自通过JS显式设置宽度的同一元素;但是你可以创建一个新元素,给它一个类,看看它有多宽

例如:

$('#elem').width(100);
alert($('#elem').width()); // this will return 100, no matter what width #elem was before
$('body').add('<div class="someclass" id="elem2"></div>');
alert($('#elem').width()); // this may return the width as assigned in CSS to .someclass
$('elem')。宽度(100);
警报($('#elem').width());//这将返回100,无论elem之前的宽度是多少
$(“正文”)。添加(“”);
警报($('#elem').width());//这可能会将CSS中指定的宽度返回给.someclass

为什么不将修改后的宽度声明给另一个类,然后您可以切换该类,而不是在javascript中使用显式值?

我建议nikc的答案,但您可以始终执行
$('elm')。removeAttr(“style”)
如果要删除脚本添加的任何样式,并将它们返回到指定的CSS值


但是,实际上,您应该将样式排除在代码之外,只需添加、删除和切换各种类。

您可以使用
.data()
来存储原始值,然后从原始值还原原始值,而不是使用全局值-它以这种方式将它们关联起来。

您无法使用
$('#elem').width()获得它
?您可以,但随后会得到新的、修改过的宽度。添加了示例。删除样式效果最好。原始值是以百分比为基础的,因此从新添加的元素中获取精确值会稍微复杂一些。唯一正在更改的样式是宽度,因此删除属性会清除它。宽度会根据周围的元素进行更改,这不是我可以预先确定的设置宽度。那么,也许您需要一个更好的网格系统。