2010-03-23 87 views
20

我需要能够将输入字段重置为其原始颜色,之后它可能已经通过javascript更改为不同的值。问题是我不想在样式表更改的情况下硬编码值。我想使用页面上使用的默认颜色。将元素颜色重置为默认样式表颜色(jQuery,JavaScript)

重新设置颜色就好了,还是有更好的方法来做到这一点?

$('#theinput').css('color', ''); 

回答

22

没有更好的办法。这是标准的方式。

基本上,没有办法从DOM元素的style属性中删除CSS属性。所以你所能做的就是将属性值设置为空,并让CSS完成其恢复到样式表的工作。

6

如果你想做到这一点在普通的JavaScript,你可以这样做:

document.getElementById('theinput').style.color = ''; 

唯一的问题与此,或您的jQuery的方法,就是如果HTML有一个style属性,该属性设置color CSS属性。如果你想保留这一点,你必须将其存储在页面加载。

但是如果假设没有风格属性是可以的,那么你就是金。

+0

你会想要一个空字符串,而不是空在那里。 – ajm 2010-03-23 14:15:35

+0

@ajm:啊,是的,欢呼声。 – 2010-09-07 17:28:54

0

很好,但是你必须指定输入内部颜色的内部颜色以及颜色应该改变的颜色。

这将工作:)

$("#InputIdName").css('color', '#979797');