在通过js脚本添加页面元素的时候,出现document.body为空或不是对象
我想通过js在页面上body之前添加一个a标签,但是老是显示document.body为空或不是对象,麻烦大神们看下,谢谢了<scripttype="text/javas...
我想通过js在页面上body之前添加一个a标签,但是老是显示document.body为空或不是对象,麻烦大神们看下,谢谢了
<script type = "text/javascript">
// var htmlbody = (document.documentElement)?document.documentElement:document.body;
var a = document.createElement('a');
document.body.appendchild(a);
a.innerHTML = '<a href = "http://www.baidu.com" >百度一下你就知道</a>';
</script> 展开
<script type = "text/javascript">
// var htmlbody = (document.documentElement)?document.documentElement:document.body;
var a = document.createElement('a');
document.body.appendchild(a);
a.innerHTML = '<a href = "http://www.baidu.com" >百度一下你就知道</a>';
</script> 展开
3个回答
展开全部
两种方式解决
封装函数
把你现有逻辑封装到一个funcation中,在页面onload加载时执行
<script>
window.onload = function () {
var a = document.createElement('a');
document.body.appendchild(a);
a.innerHTML = '<a href = "
" >百度一下你就知道</a>';
}
</script>
2. 自动执行
和你目前方式一样,但先要弄清原理
因为HTML为逐行加载,所以页面加载时,document.body还没有生成,所以显示document.body为空或不是对象
但只要把你js代码换个位置即可,由于要使用到body标签,那么就移动到body后即可
<body>
<body>
<script>
....你的代码
</script>
展开全部
<script>
window.onload = function () {
var _body = document.body;
var _a = document.createElement("a");
_body.appendChild(_a);
}
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<HTMLBodyElement> has no method 'appendchild'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询