qq_仰望摩天轮_0
2015-08-18 08:54
搞不明白到底是谁给函数传了个参数n。。 求解答???
( return x; 返回x,之前说了用变量y来接收,)请问哪行代码表明明要用变量y接收?谢谢
//先执行以下代码
var x=document.getElementsByTagName("li")[0]; //x为 <li id="a">javascript</li>
document.write(x.nodeName); //输出x的节点名称为LI
document.write(" = ");
document.write(x.innerHTML); //输出x的节点的值为javascript
var y=get_nextSibling(x); // 将x传给函数,并且将返回后的值赋给变量y
//函数接收参数后执行函数内的语句
function get_nextSibling(n){ //n用来接收以上传来的x。所以n为 <li id="a">javascript</li>
var x=n.nextSibling; //需要注意的是此时函数内定义的变量x与上面传来的x是完全不同的变量。(请了解全局变量和局部变量的不同),将n的下一个兄弟节点赋值给变量x。不进行是否有空白节点的考虑啦,我就认为 x为 <li id="b">jquery</li>
while (x && x.nodeType!=1){ //这是为了浏览器兼容问题进行循环判定.目的是消除空白节点。找元素节点。
x=x.nextSibling;
}
return x; 返回x,之前说了用变量y来接收
}
if(y!=null){ 判断y是否是空的。如果不是,执行以下循环体
document.write("<br />nextsibling: ");
document.write(y.nodeName);
document.write(" =");
document.write(y.innerHTML);
}else{ //如果y是空的,说明是最后一个节点,执行以下语句。
document.write("<br>已经是最后一个节点");
}
懂了 var y=get_nextSibling(x); n是这么传得。太不仔细了,害我想好久
JavaScript进阶篇
468063 学习 · 21891 问题
相似问题