看代码,为什么输出的undefined.

来源:9-10 访问父节点parentNode

web小菜

2017-02-07 17:08

没发现哪里有错误,为啥在360浏览器总出输出undefined呢

写回答 关注

3回答

  • 啊啊啊啊123
    2017-02-08 10:19:24

    JS中空格也是作为一个文本节点. 就是这么规定了 可以判断 if(elements.nodeType == 3 ){...}

  • 初影_chaos
    2017-02-07 21:10:26
    <ul id="con">
        <li id="lesson1">javascript
          <ul> 
              <li id="tcon"> 基础语法</li>
              <li>流程控制语句</li>
              <li>函数</li>
              <li>事件</li>
              <li>DOM</li>
          </ul>
        </li>
        <li id="lesson2">das</li>
        <li id="lesson3">dadf</li>
        <li id="lesson4">HTML/CSS 
          <ul>
            <li>文字</li>
            <li>段落</li>
            <li>表单</li>
            <li>表格</li>  
          </ul> 
        </li></ul>

    这个undefined其实是空白结点,也就是结尾的</li>和</ul>之间的空白结点,课程里面讲过IE浏览器会忽略,而其他浏览器不会,你把表格代码结尾像我上面给的修改一下就可以了。望采纳

    初影_cha... 回复web小菜

    节点之间的空白符,在firefox、chrome、opera、safari浏览器是文本节点,所以谷歌chrome也一样。学习这个也不是让你用到它,是让你知道存在这么个东西,像你给出的代码想输出html/css课程的内容,你知道这个空白结点的存在才知道怎么写才会输出你想要的,而不是输出undefined.

    2017-02-08 16:05:25

    共 3 条回复 >

  • O1dSky
    2017-02-07 20:49:07

    我试了一下

    <ul>
            <li>文字</li>
            <li>段落</li>
            <li>表单</li>
            <li>表格</li>  
          </ul> 
        </li>
    </ul>  
    //这样会输出undefined
    
    <ul>
            <li>文字</li>
            <li>段落</li>
            <li>表单</li>
            <li>表格</li>  
          </ul> 
        </li></ul>  
        
    //这样就可以输出正确结果
    //我也不知道为什么会这样。。


    O1dSky

    我试多了几次,发现最后的 </li>和</ul>之间有多一个空格都不行,具体原因等大神来回答了

    2017-02-07 20:57:57

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题