2012-09-27 40 views
1

我正在尝试制作一些动画。从html元素中检索fontSize

我在css中设置了html元素中的默认字体大小

我想获得我在CSS中设置的字体大小,然后在JavaScript中使用它。

我想这...

var somevariable = getElementById('HtmlId'); 
var anothervariable = somevariable.style.fontSize; 

,但我得到NAN。

我试着解析变量,假设它返回一个字符串。

我想要得到的CSS

回答

0

,如果你使用jQuery,你可以这样来做:

var somevariable = $("#HtmlId").css("font-size");

1

我建议你使用jQuery:

var fontSize = parseInt(jQuery('#HtmlId').css('font-size'), 10); 

纯JavaScript的使用可能不会返回所需的结果,就像您在控制台(网站:stackoverflow.com)中单独运行以下行一样。结果是不同的。

document.body.style.fontSize // '' 
jQuery('body').css('font-size') // 13px 
1

它应该是: -

var somevariable = document.getElementById('HtmlId');

行之后是罚款。

+0

不,即使以这种方式固定,代码也只是获得'body'元素'style'属性中设置的'font-size'值。如果字体大小是默认的,或者如果以普通的方式设置,比如CSS规则'body {font-size:12pt','fontSize'属性有一个空值。 –

1

这是一个非jquery解决方案...即使字体未在CSS中设置也能正常工作。 Kind've笨拙......

var myElem = document.getElementById("myElementId"); 
var fontSize = document.defaultView.getComputedStyle(myElem, null).fontSize; 

edit-别人看到了什么真正的错误可能是...错过了“文件”。