2014-02-18 70 views
0

我想每次從我的JavaScript列表中刷新我的頁面時,都會生成一個新的字體。我總共需要4種字體,並且我希望讀取「字體」的行是實際更改的字體。任何時候我刷新頁面都無法改變字體。任何方式,我可以用JavaScript做到這一點?這裏有一些我嘗試過的東西:每次刷新頁面時,如何爲一行文本生成隨機字體?

<script> 
var fontType = [ "Arial", "Verdana", "Helvetica"]; 
var num; 
num=Math.floor(Math.random()*3); 
document.getElementById("fontfamily").src=fontType[num]; 
</script> 

這似乎沒有工作。我想知道我必須爲這些字體調用一個ID,但是有沒有像「GetelementById(fontfamily)」這樣的東西?這也是在我的身體標籤。

var font = []; 
font[0] = "Times New Roman"; 
font[1] = "Arial"; 
font[2] = "Helvetica"; 

這是更好的選擇嗎?我如何得到這個隨機選擇?

回答

5

每當你想樣式使用JavaScript的元素,使用.style那麼駝峯的CSS屬性你想document.getElementById("fontfamily").style.fontFamily;

。所以font-family變得fontFamilybackground-image成爲backgroundImage

var fontType = [ "Arial", "Verdana", "Helvetica"]; 
var num; 
num=Math.floor(Math.random()*3); 
document.getElementById("fontfamily").style.fontFamily =fontType[num]; 

http://jsfiddle.net/DZnbR/

0

在這裏你去:

<!DOCTYPE html> 
 
<html> 
 
    <head> 
 
     <meta charset="utf-8"> 
 
     <title></title> 
 

 
     <link href="https://fonts.googleapis.com/css?family=Open+Sans|Raleway|Roboto" rel="stylesheet"> 
 

 
     <style> 
 
      .Roboto{ 
 
       font-family: 'Roboto', sans-serif; 
 
      } 
 
      .Open_Sans{ 
 
       font-family: 'Open Sans', sans-serif; 
 
      } 
 
      .Roboto{ 
 
       font-family: 'Raleway', sans-serif; 
 
      } 
 
     </style> 
 
    </head> 
 
    <body id="body"> 
 

 
     <script> 
 

 
      var fonts = ['Roboto', 'Open_Sans', 'Raleway']; 
 
      var rand = fonts[Math.floor(Math.random() * fonts.length)]; 
 
      console.log(rand); 
 

 
      var bodyElement = document.getElementById("body"); 
 
      bodyElement.className = rand; 
 
     </script> 
 
    </body> 
 
</html>

相關問題