无法获取未定义或空引用的 属性 'querySelector'

Unable to get property 'querySelector' of undefined or null reference

我遇到了这个错误: JavaScript 运行时错误:无法获取 属性 'querySelector' 未定义或空引用

我正在尝试在 Cordova 上选择联系人。这适用于 iOS 和 Android。在 windows phone,应用程序运行但随后因此错误而崩溃。这是它崩溃的地方(var listeningElement)。我搜索了很多但无法找到解决方案。任何人都可以帮我解决它吗?谢谢:

receivedEvent: function(id) {
    var parentElement = document.getElementById(id);
    var listeningElement = parentElement.querySelector('.listening');
    var receivedElement = parentElement.querySelector('.received');

    listeningElement.setAttribute('style', 'display:none;');
    receivedElement.setAttribute('style', 'display:block;');

    console.log('Received Event: ' + id);
}

我尝试了以下方法:

  1. 按照其他人的建议将其包装在 onload 中
  2. 将js文件移动到页眉
  3. 将其移动到 jquery 就绪函数

也许其中一个适合您,但到目前为止我所确定的是它可能与事物的顺序有关!

经过大量研究,解决我问题的解决方案是:Strange phonegap device ready event behaviour

将此行放回您的 index.html

    <div id="deviceready" class="blink">
        <p class="event listening">Connecting to Device</p>
        <p class="event received">Device is Ready</p>
    </div>

祝你好运