我是学习JavaScript和HTML和CSS的新手,我试图改变文档对象中所有段落的大小 这是我的代码,但我没有得到任何更改,我注意到documnet.getElementsByTagName('p')返回一个空对象
<html>
<head>
<script>
window.onload=function(){
var paragraphs = document.getElementsByTagName("p");
for(var i = 0; i < paragraphs.length; i++){
paragraphs[i].style.fontSize = '45px';
}
}
</script>
</head>
<body>
<p>helooop</p>
<p>helooop</p>
<p>helooop</p>
<p>helooop</p>
</body>
我不知道哪里出了问题。 请有人帮忙吗
答案 0 :(得分:1)
window.onload = function () {
var paragraphs = document.getElementsByTagName("p");
for (var i = 0; i < paragraphs.length; i++) {
paragraphs[i].style.fontSize = '3em';
}
}
因为你正在增加fontsize onload(这对我来说没有意义),为什么不在你的css中尝试这个:
* {
font - size: 3em!important;
color: #000 !important;
font-family: Arial !important;
}
答案 1 :(得分:0)
使用$(document).ready()
换行(或此解决方案以避免jQuery $(document).ready equivalent without jQuery)
你的代码工作正常,但是在DOM准备好之前脚本会激活,而任何«p»都在那里
UPD
$(document).ready(function(){
var paragraphs = document.getElementsByTagName("p");
for(var i = 0; i < paragraphs.length; i++){
paragraphs[i].style.fontSize = '45px';
}
};
UPD2
见coments,抱歉=)
答案 2 :(得分:0)
代码工作正常
var paragraphs = document.getElementsByTagName("p");
for (var i = 0; i < paragraphs.length; i++) { paragraphs[i].style.fontSize = '45px';
}
答案 3 :(得分:0)
是的,代码正在运行,但似乎在for()命令的行中有一些隐藏的字符,这会阻止正确的解析。我将代码剪切并粘贴到Chrome上并报告:
Uncaught SyntaxError: Unexpected token ILLEGAL
我必须先删除前面的所有内容和for()命令才能使其正常工作。
实际上,第5 - 8行在文本前面包含0020和3000个字符的混合。因此,Firefox和Chrome都会报告SyntaxError。
不知怎的,你设法将这些字符放入。你必须删除文本前面的那些字符,并在那里放置空格(或制表符)。并且您的代码将如此工作。