DOM traveal javascript出错

时间:2017-09-01 08:44:35

标签: javascript dom

为什么我在下面的代码中收到错误。错误说。请指教。我想向上移动直到找到标签“h2”。

  

“未捕获的TypeError:无法读取属性'querySelector'的null”

var z =document.querySelector('input[id="nf-field-448"]');
x=z.parentElement;


       while(!x.querySelector('h2'))

        {    
            if(x.previousElementSibling !== "null")

                { 
                   x = x.previousElementSibling;

                }


            else 
                {

                 x = x.parentElement;

                   }

        }

        alert('true');
    }

1 个答案:

答案 0 :(得分:0)

如果你像这样重写你的功能会有帮助吗?

var z = document.querySelector('input[id="nf-field-448"]')
x = z.parentElement

while (!x.querySelector('h2')) {
  x = x.previousElementSibling || x.parentElement

  if (!x) console.log(`
    x is undefined
    - previousElementSibling ${x.previousElementSibling}
    - parentElement ${x.parentElement}
  `)
}