2-8编程练习后续?????
var inputs=document.getElementsByTagName("input");
var entry=inputs[0];//????这里定义这个的作用是什么????
entry.onclick=entryFn;//????这里不可以直接写成inputs.onclick=entryFn()吗?????为什么
function entryFn(){
var arr=[];
while(str!=-1){
var str=prompt("请输入员工姓名,勿输入-1");
arr.push(str);
}
arr.length=arr.length-1;
document.write(arr+"<br />");
for(var i=0;i<arr.length;i++){
document.write("录入的第"+(i+1)
+"名员工是"+arr[i]+"<br />");
}
}
正在回答 回答被采纳积分+1
var entry=inputs[0];//????这里定义这个的作用是什么????
答:作用是因为input中没有给定id属性,因此为了获取input标签,使用getElementsByTagName,但是此方法返回值是数组,因此下标为0的也就是第一个input。可以获取到。
entry.onclick=entryFn;//????这里不可以直接写成inputs.onclick=entryFn()吗?????为什么
可以写成inputs[0].onclick=entryFn;
答:不可以写成inputs.onclick=entryFn()。在DOM0级事件中调用函数,不可以加括号,原因在视频中老师重点提到了,可以仔细看看。
同样可以写成inputs[0].onclick = entryFn; 因为inputs[0]代表的是当前的input标签,而entry也是代表的input标签,只不过是因为entry是一个变量,用来接收了input[0]
- 参与学习 547 人
- 提交作业 206 份
- 解答问题 640 个
JavaScript作为前端学习中的一个重要组成部分,本课程将带领你从最基础的语法开始,学习js的流程控制语句、函数、内置对象、DOM基础、DOM事件、BOM基础以及经典的js案例--轮播图。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星