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

为什么这一节里面要加innerHTML=text?

不写text 文字就变成了 和自己设置的一样了,求解惑

正在回答

3 回答

拿这个例子来说吧,我也是初学者我只能按我所知道的和理解的来给你解释下:

var main = document.body;

function createa(url,text){

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

    newnode.setAttribute('href',url);

    newnode.innerHTML = text;

    newnode.style.color = 'red';

    main.appendChild(newnode);

}

// 调用函数创建链接

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

这是上面的例子,www.imooc.com相当于上面函数的参数url,慕课网相当于text这个参数;

如果我们不是那样写,像下面这样不传参数:

var main = document.body;

function createa( ){

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

    newnode.setAttribute('href',"www.imooc.com");

    newnode.innerHTML = "慕课网";

    newnode.style.color = 'red';

    main.appendChild(newnode);

}

createa();//我们必须要先调用以下它,才能完成创建了一个带href属性,内容为慕课网的<a>元素

//如果说我还让你继续创建10个a标签,分别写十个网站的网址和网站名,那按照以上我们是不是要写十段相同的代码,分别给它的href设置不同的网址,还有innerHTML赋值不同的名称,那样是不是很麻烦呢?这时候我们就需要抽离出相同的代码,只给它传入两个形参,来代替不同的实参就可以了。(形参就是像url,text,实参就是调用这个函数时传入的参数“www.imooc.com”“慕课网”)

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

嗷嗷,谢谢

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

这里的text是封装的createa这个函数传进去的参数,这样做的好处是,可以多次调用这个函数传递不同的参数。函数的复用性

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

qq_Mr_9 提问者

还是不太懂。。。不封装参数就不能多次调用么?
2015-11-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么这一节里面要加innerHTML=text?

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