通过js改变CSS属性,要怎么实现?

<divid="nav">改变字体颜色</div><divid="frm">第二个DIV</div>vard=document.getElementById('nav')... <div id="nav">改变字体颜色</div><div id="frm">第二个DIV</div>
var d=document.getElementById('nav');
d.style.color="red"这样写不可以啊,那要提取ID为nav的DIV要怎么写呢?
我把JS代码直接写在<script type="text/javascrip"></script>放在<head>标签中没效果,后来把它放在<body>里,而且还得放在html代码后面,为啥呀?哪位能不能为解释一下.html文件的执行过程
展开
 我来答
wskfhvhc
推荐于2017-09-27 · TA获得超过692个赞
知道小有建树答主
回答量:307
采纳率:66%
帮助的人:302万
展开全部
测试过,下面这样写有效果
<div id="nav">改变字体颜色</div><div id="frm">第二个DIV</div>
<script>
var d=document.getElementById('nav');
d.style.color="red";
</script>
js代码写在下面才有效果,是因为网页是顺序向下执行,这段JS写在上面,独立执行,会找不到nav标签,可以用window.load=""来载入整个网页,然后再执行JS,这样修改:
<script>
window.onload=function(){
var d=document.getElementById('nav');
d.style.color="red";
}
</script>
<div id="nav">改变字体颜色</div><div id="frm">第二个DIV</div>
andyfr1210
2012-03-13 · 超过33用户采纳过TA的回答
知道答主
回答量:93
采纳率:0%
帮助的人:85.4万
展开全部
当元素加载完成之后,你才能获取这个元素对象,html的执行过程是按照从前往后的顺序进行的,你如果把那段代码放在头部,其实这时nav对象都还没有加载,当然取不到对象了,你可以把代码放在页面的最后面(偶尔也会有点问题),最好还是把代码写在页面加载完成后的事件里,具体代码如下,
window.onload=function(){
var d=document.getElementById('nav');
d.style.color="red";
}
这样就可以了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
the4ever
2012-03-14 · TA获得超过409个赞
知道小有建树答主
回答量:407
采纳率:0%
帮助的人:339万
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式