gpt4 book ai didi

javascript - element.style.fontSize 不返回大小

转载 作者:行者123 更新时间:2023-11-30 17:08:20 26 4
gpt4 key购买 nike

<分区>

我被打败了,我准备忍受任何虐待来找出为什么我不能做一些简单的事情,比如让 onload 函数告诉我正文字体大小是 20pt。我一直读到眼睛流血,除了我以外的每个人似乎都能使下面的脚本起作用。

但是我的#@!/%#!代码吐出一个警告框,其中包含以下内容:(我用了两行来确保这不是大小写问题)

[  ]
[undefined]

其实我的目的是利用在head段执行的scritp,或者onload,读取屏幕宽度,通过公式设置body字体大小。 [接下来的尝试是将 body 标签排除在代码之外,并将脚本 document.write() 放在 body 标签中,并带有设置 body 字体大小的样式规范。下面这应该只是一个热身练习。] 任何和所有的帮助表示赞赏。

<html>
<head>
<style>
body {font-size:20pt;color:white;font-weight:bold;background:grey;}
</style>

<script type="text/javascript">
onload=function(){
alert("[ " + document.getElementsByTagName("body")[0].style.fontSize +" ]"
+"\n[ " + document.getElementsByTagName("body")[0].style.fontsize + " ]");
}
</script>
</head>
<body>
<div>Test Text</div>
</body>
</html>

以下是我在下面评论的帮助下得到的。

这些都返回字体大小。

getComputedStyle(document.body).fontSize
getComputedStyle(document.body).getPropertyValue('font-size')

但是当用于设置字体大小时它们会抛出错误

getComputedStyle(document.body).fontSize = "30pt";
getComputedStyle(document.body).setProperty("fontSize", "25pt", "important") ;

另一方面,这些都设置了新的字体大小

document.body.style.fontSize = "200%";
document.getElementsByTagName("body")[0].style.fontSize = "400%";

但当询问字体大小时,它们都返回长度为 0 的字符串。

document.body.style.fontSize 
document.getElementsByTagName("body")[0].style.fontSize

这是一个用于确认它的 onload 函数:

 onload=function(){
var msg = "onload:\n";
/* these both return font size.*/
msg += "1. [ " + getComputedStyle(document.body).fontSize + "]\n";
msg += "2. [ " + getComputedStyle(document.body).getPropertyValue('font-size') + "]\n";
/* these both return a string of lenght 0.*/
msg += "3. [ " + document.body.style.fontSize + "]\n";
msg += "4. [ " + document.getElementsByTagName("body")[0].style.fontSize + "]\n";
/*these both throw errors*/
try { getComputedStyle(document.body).fontSize = "30pt";
} catch (err) { msg += "5. [" + err.message + "]\n"; }
try {getComputedStyle(document.body).setProperty("fontSize", "25pt", "important") ;
} catch (err) { msg += "6. [" + err.message + "]\n"; }
/*these both set new font size*/
alert(msg);
document.body.style.fontSize = "200%";
setTimeout(function(){document.getElementsByTagName("body")[0].style.fontSize = "400%"},1500);
}

显然我遗漏了一些东西,但现在这是可行的。圣诞快乐

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com