Erreur déjà après la création de l'application phonegap, Impossible d'appeler méthode méthode 'querySelector'

Après avoir créé une application Phonegap et l'exécuter, il semble y avoir une erreur dans logcat

Uncaught TypeError: Cannot call method 'querySelector' of null at file:///android_asset/www/js/index.js:41 

est-ce un problème? Et comment puis-je résoudre cela?

  • Comment appeler une activité Android depuis PhoneGap
  • Tout tutoriel admob de travail pour Phonegap dans Android
  • Phonegap ajoutant des éléments au bac de notification
  • La plate-forme de Cordova ajoute un problème étrange et android
  • Ajax post ne fonctionne pas - Jquery Phonegap Android
  • L'erreur de référence sur la notification n'est pas définie dans la notification push cordova android
  • Dagger v2: Injecter 2 étendues différentes dans un seul objet
  • L'application est incompatible avec tous les appareils après la publication sur le marché, mais la même chose s'est produite lorsqu'elle est déplacée directement sur le périphérique
  • PhoneGap android: le clavier chevauche le champ de saisie
  • Phonegap me demande toujours d'installer android sdk 19 mais je l'ai déjà installé
  • Le clavier Android Phonegap couvre les éléments d'entrée, le défilement est désactivé
  • Quelle plate-forme Android SDK ai-je besoin?
  • One Solution collect form web for “Erreur déjà après la création de l'application phonegap, Impossible d'appeler méthode méthode 'querySelector'”

    J'ai eu cette erreur et je pense que vous avez essayé de faire ce que j'ai fait. J'ai commencé à créer l'application à partir de l'exemple du code de l'application sans bien comprendre le modèle de l'événement et ce qui se déclenche quand.

    L'exemple d'application contient une section HTML dans index.html

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

    C'est ce qui est mis à jour par l'événement déclenchant dans le JS:

      onDeviceReady: function() { app.receivedEvent('deviceready'); }, //... // Update DOM on a Received Event receivedEvent: function(id) { var parentElement = document.getElementById(id); app.receivedEvent('deviceready'); var receivedElement = parentElement.querySelector('.received'); listeningElement.setAttribute('style', 'display:none;'); receivedElement.setAttribute('style', 'display:block;'); console.log('Received Event: ' + id); } 

    Mais j'avais retiré le div avec ID "deviceready" pour que le JS échoue avec l'erreur que vous décrivez. J'ai supprimé l'appel app.receivedEvent … et tout fonctionne bien. Après avoir dit que le fait de diviser cette partie provoquait une erreur de pile d'appel maximale différente, alors je ne suis pas vendu. J'ai toujours mon JS correct.

    Ce que je (pensez!) J'ai également appris qu'il ne faut pas être tenté d'utiliser le classique $ (document) .ready (function () pour charger la fonctionnalité de votre application. Cela devrait être une fonction appelée à partir du code où L'événement onDeviceReady est déclenché à la place.

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.