2012-05-27 85 views
0

我有一个表单,允许用户按下向上或向下按钮来调整元素的字体大小。当我重置表单时,我需要将“默认”字体大小放回隐藏字段以发送到php脚本。那么我怎样才能获得实际输入到css样式表的css字体大小,而不是被jquery改变的字体大小?jquery css默认字体大小

谢谢 托德

+0

调整它的代码在哪里?获取默认值的目的是为了重置演示文稿? –

+0

是的,重置所有内容,如'新鲜'重新加载。 – maddogandnoriko

回答

1

你可以在你的CSS定义的默认字体大小,像这样:

#myelement { 
    font-size: 12; 
} 

然后你就可以在本地通过使用JavaScript

var element = document.getElementById('myelement'); 
element.style.fontSize = new_font_size; // local values override the value from the stylesheet. 

然后,当你想将其设置为覆盖该值默认

var element = document.getElementById('myelement'); 
element.style.fontSize = null; // now it reverts back to using the value defined in the stylesheet 
+0

改变它正是我想要的。 – maddogandnoriko

2

最简单的方法是将存储原始的字体大小,你改变它之前:

var originalFontSize = $myElement.css('font-size'); 
在你的重置表单代码

然后:

$myHiddenElement.attr('value', originalFontSize); 

可以使用Javascript访问实际样式表内的定义 - 描述here - 但是接下来你必须对元素的相关定义所在的位置做出各种假设,并且不会考虑任何浏览器特定的覆盖等。只是在获取该元素之前更容易你修改它。

+0

这就是我最终做的,但似乎有点不对。这可能是最简单也是最可靠的。谢谢。 – maddogandnoriko

+1

@maddogandnoriko - 请参阅下面的Steve的回答 - 他表示将'fontSize'属性设置为'null'会将其恢复为其样式表值。它可能会更加兼容使用jQuery的这个版本,即''myElement.css('font-size','')' –

+0

很好...正是我需要的 – maddogandnoriko

0

您需要在更改字体大小之前在JS变量中设置默认值。

var defaultFontSize = 20; 

然后用它来重置。

+0

但如果我在样式表中更改它在路上,我将不得不记得在js中改变它。...... – maddogandnoriko

+0

你多久会这样做? –

+0

不确定....但如果我决定从现在开始改变它,我很可能会忘记在两个地方 – maddogandnoriko