问答详情
源自:9-11 访问兄弟节点

请问 <li id="a">是什么节点呢

如果是元素节点是不是与上面的 x.nodeType!=1矛盾了

提问者:哦gqgq_627 2016-10-27 21:47

个回答

  • 老友丶
    2016-10-27 22:30:32
    已采纳

    function get_nextSibling(n){

            var x=n.nextSibling;

            while (x && x.nodeType!=1){

                x=x.nextSibling;

            }

            return x;

        }

    是的呀,如果nodeType!=1,所以说明这个节点不是元素节点,进入while循环,继续找下一个节点,直到找到第一个元素节点,跳出循环,就找到了最近的一个元素节点。

    这样做的主要目的是因为某些浏览器将空文本看成一个节点(不判断可能得到的不是想要的元素节点),算是处理兼容问题的一种吧。