为了账号安全,请及时绑定邮箱和手机立即绑定

为什么放到<head>里面就不执行

<script type="text/javascript">

var main = document.body;

//创建链接

function createa(url,text)

{

    var link=document.createElement('a');

    link.setAttribute('href',url);

    link.innerHTML=text;

    link.style.color='red';

    main.appendChild(link);

}

// 调用函数创建链接

createa('http://www.imooc.com','慕课网');

</script>  


这段代码放到body里面没问题,放到head里面就失效了,为什么会这样

正在回答

3 回答

放在<head>里的代码一般是预加载,只执行一次,并且浏览器是按照先后顺序编译的,要把代码再次加载,要加把代码都放到window.onload=function(){  }的大括号里,代码如下:

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>无标题文档</title>

<script type="text/javascript">

window.onload=function(){

var main = document.body;

//创建链接

function createa(url,text)

{

    var link=document.createElement('a');

    link.setAttribute('href',url);

    link.innerHTML=text;

    link.style.color='red';

    main.appendChild(link);

}

// 调用函数创建链接

createa('http://www.imooc.com','慕课网');

}

</script>  

</head>


0 回复 有任何疑惑可以回复我~

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>无标题文档</title>

</head>

<body>

<script type="text/javascript">

var main = document.body;

//创建链接

function createa(url,text)

{

    var a=document.createElement("a"); 

    a.href=url;

    a.innerHTML="慕课网";

    main.appendChild(a);

    

}

// 调用函数创建链接


createa("http://www.imooc.com","慕课网");

</script> 

</body>

</html>


0 回复 有任何疑惑可以回复我~
#1

慕仔1561325 提问者

然后呢。。。body里面是没问题啊。。。。
2019-01-29 回复 有任何疑惑可以回复我~

createa('http://www.imooc.com','慕课网');

是调用函数的文本。文本应该在body里。head的文本不显示。

0 回复 有任何疑惑可以回复我~
#1

慕仔1561325 提问者

不对吧,调用函数放head和body是一样的,我测试过了
2019-01-19 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么放到<head>里面就不执行

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信