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

调用函数创建链接??? createa用法

<script type="text/javascript">

var main = document.body;

var body= document.body;

//创建链接

function createa(url,text)

{

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

    a.href = url;

    a.innerHTML = text;

    a.style.color = "red";

    body.appendChild(a);

}

// 调用函数创建链接

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

</script> 


正在回答

3 回答

补充一点,document.write如果在文档流关闭后使用的,就是我前面说的那种新开一个HTML文档,如果是在关闭前使用的,那么就是在原有文档的body里写。怎么看关闭后还是关闭前,看你调用到这句话的时候,整个HTML被读完了没:

比如说<html><body><javascript>document.write("a")</javascript></body></html>

在还没读到</html>就执行了document.write,这时候,是在现有文档里写的。

假如<html><javascript>window.onload=function(){document.write("a");}</javascript><body></body></html>这就新开了一个文档,为什么呢,就因为window.onload,执行的是文档读完之后再执行function(){document.write("a"),所以document.write执行时,文档已经读完了,读完了就关闭了,再打开就是新HTML了。

同理,如果是个onclick=document.write,也是新打开一个文档,为什么呢,因为onclick触发的时候,文档已经读完了。

估计你对文档这个概念有点陌生,这部分多查查多看看就能理解了,我语言表达能力不足,这段并没有说的太清楚,最好自己再多看看。

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

listenlo 提问者

好的 非常感谢
2016-04-29 回复 有任何疑惑可以回复我~
#2

Dream0703

好深奥哦,有点懵逼
2016-05-07 回复 有任何疑惑可以回复我~

createa函数是自己定义的函数,不是已有的方法,用法按照定义的调用就好,下面给你逐行解释一下。

function createa(url,text)//定义了一个函数叫createa,它有两个参数

{

    var a = document.createElement("a");//创建了一个a标签

    a.href = url;//a标签的href属性是传进来的第一个参数,那么第一个参数需要是一个链接

    a.innerHTML = text;//a的innerHTML属性是传进来的第二个参数,第二个参数就是a标签的内容

    a.style.color = "red";//a标签的颜色被设置成了红色

    body.appendChild(a);//将创建的a标签放入了body里,作为body的子元素

}

这样应该就可以明白了,还有哪不明白就再问吧


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

listenlo 提问者

createa("http://www.imooc.com/","慕课网");这个和 document.write() 直接输出有什么不同
2016-04-28 回复 有任何疑惑可以回复我~
#2

kuban 回复 listenlo 提问者

你看啊,createa这个函数的功能其实就是在body里创建一个a标签,是创建了一个a标签通过给a标签里放内容显示的,document.write是重新打开一个文档流,就是重新开了一个html文档,内容写在这个新文档的body里。不知道你以前用document.write有没有发现,假如之前你写了个按钮,点击按钮用document.write显示一段内容,你会发现内容显示了,按钮却没了,这就是因为我说的那是开了一个新html显示的,你button在旧HTML里看不见了
2016-04-28 回复 有任何疑惑可以回复我~
#3

listenlo 提问者

明白了,谢谢你呀
2016-04-29 回复 有任何疑惑可以回复我~
#4

十二月晴朗

a.href = url;//a标签的href属性是传进来的第一个参数,那么第一个参数需要是一个链接 这里为什么不能反过来写成 url=a.href;
2016-06-13 回复 有任何疑惑可以回复我~
#5

kuban 回复 十二月晴朗

等号是把等号右边的值赋值给等号左边 a.href = url是给a.href赋值 url=a.href是给url赋值
2016-06-19 回复 有任何疑惑可以回复我~
#6

weibo_ 回复 kuban

按你的意思 ,我们这里调用createa函数,是新打开了一个标签页?那为什么标签页没有创建链接的结果
2016-07-17 回复 有任何疑惑可以回复我~
#7

kuban 回复 weibo_

新打开一个标签页是回答提问者提问的此处如果用document.write的结果,调用createa函数只是创建链接,如果你想要创建链接的同时使链接到的新标签页打开,需要使用target属性,需加一行a.target="_blank"
2016-07-21 回复 有任何疑惑可以回复我~
查看4条回复

举报

0/150
提交
取消

调用函数创建链接??? createa用法

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