写JS时浏览器报错:Cannot read property 'style' of null

document.getElementById("message").style.top=(window.screen.height-300)+"px";... document.getElementById("message").style.top=(window.screen.height-300)+"px"; 展开
 我来答
yinconggggg
2018-04-05 · TA获得超过1.5万个赞
知道小有建树答主
回答量:8
采纳率:0%
帮助的人:1963
展开全部

写JS时浏览器报错:Cannot read property 'style' of null的原因:

document.getElementById("message").style.top=(window.screen.height-300)+"px"。

你的JS运行的时候你的页面还没有加载完成,所以你的JS代码找不到你的页面元素,就会抛出这个问题。

JS:

JS是JavaScript的简称。JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。 

百度网友9b112ee75
推荐于2018-05-20 · TA获得超过342个赞
知道小有建树答主
回答量:316
采纳率:0%
帮助的人:155万
展开全部
很简单,你的JS运行的时候你的页面还没有加载完成,所以你的JS代码找不到你的页面元素,就会抛出这个问题
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-08-18
展开全部
你把引入的<script type="text/javascript" src="/././."></script> 这个写在页面后面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2012-05-26 · TA获得超过4630个赞
知道大有可为答主
回答量:1345
采纳率:50%
帮助的人:1637万
展开全部
难道你用了if...else?

最好不要使用
if(flag){
a.style.top = "";
}else{
a.style.top = "";
}

这样第二个style会出问题的。应该加入一个变量,如下
var temp ;
if(flag){
temp = "";
}else{
temp = "";
}
a.style.top = temp;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2018-06-03
展开全部

终于找到原因了了,什么页面渲染先加载了js,

我写的是点击绑定方法,点击后方法才会被调用,

怎么会未渲染,就先调用呢,不说上图

id前面莫名其妙的打出了一个不是空格的东西

重新打了一遍然后就好了

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 6条折叠回答
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式