2017-08-31 28 views
0

我是javascript的超级新手,也许这已在其他地方得到解答,但我无法找到它,因为我仍在学习术语。以div标记内容并将其应用于javascript中的内联样式

我想要使用div标签的内容来定义它嵌套在div中的css值。

<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
     <script type="text/javascript"> 
 
      function data(){ 
 
       alert(); 
 
       var sizeOverride = document.getElementById('newdata').innerHTML 
 
alert(sizeOverride) 
 
      } 
 
     </script> 
 
    </head> 
 

 
    <body> 
 
    \t <div id=sizeChange> 
 
     <div id="newdata"> 
 
      40 <!--The idea is for this to be 40px--> 
 
     </div> 
 
     </div> 
 
     <script type="text/javascript"> 
 
     document.getElementById("sizeChange").style.fontSize = "sizeOverride" + "px"; 
 
    \t </script> 
 
    </body> 
 
</html>

最终的计划是利用这在图表上定义一个栏的位置和标签,即会出现在利用hotfields填写的信息的网页DIV。该框架已经建立,但目标是使用该数据来定义该div的css值。

没有任何错误,但没有发生任何事情。这可能很简单。我很感激你对我的支持。

+0

'sizeOverride'是一个变量,但你'串联 “sizeOverride”'接近底部的字符串,而不是一个变量。不要在变量名称周围引用引号。 –

+0

将头部的javascript添加到底部的脚本标记中。在head-tag执行时,DOM不会被渲染。 – Reiner

回答

2

<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
     <script type="text/javascript"> 
 
      function data(){ 
 
        return parseFloat(document.getElementById('newdata').innerHTML.trim()); 
 
      } 
 
     </script> 
 
    </head> 
 

 
    <body> 
 
    \t <div id=sizeChange> 
 
     <div id="newdata"> 
 
      40 
 
     </div> 
 
     </div> 
 
     <script type="text/javascript"> 
 

 
     document.getElementById("sizeChange").style.fontSize = data() + "px"; 
 
    \t </script> 
 
    </body> 
 
</html>

+0

注意以下更改 1.元素“newdata”必须只有值(数字)。没有它,document.getElementById('newdata')。innerHTML将包含“newdata”中包含注释的所有内容。 2.注意数据函数中的parseFloat。这用于将字符串innerHTML转换为数字。 –

+1

我会用:'parseFloat(document.getElementById('newdata')。innerText.trim());'只是为了照顾不吉祥的人物。 – Reiner

+0

已添加!完全有道理:-) –

相关问题