每次从JavaScript中的列表刷新页面时,我都会尝试生成新字体。我想要总共4个字体,我希望读取“Font”的行是实际更改的字体。我无法在刷新页面时随时更改字体。用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";
这会是更好的选择吗?我如何随机选择?
答案 0 :(得分:5)
您想要document.getElementById("fontfamily").style.fontFamily;
每当您想使用JavaScript设置元素样式时,请使用.style
,然后使用css属性。因此font-family
变为fontFamily
,background-image
变为backgroundImage
var fontType = [ "Arial", "Verdana", "Helvetica"];
var num;
num=Math.floor(Math.random()*3);
document.getElementById("fontfamily").style.fontFamily =fontType[num];
答案 1 :(得分: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>