Erreur Uncaught TypeError: Cannot read properties of null

Bonjour à tous

Je viens d’installer Matomo sur une page perso pour remplacer GA4 et pour l’instant je suis super satisfait : beaucoup plus intuitif, plus rapide sur pageSpeed, RGPD…

  • Installation on premise sur un hébergement mutualisé OVH
  • Opt out permettant au visiteur de désactiver le suivi avec un script proposé par Matomo.

Je ne suis pas développeur et j’ai juste fait quelques modifs dans le JS sur les textes destinés au visiteur à priori sans conséquences.

J’ai cette erreur dans l’inspecteur Chrome :

Uncaught TypeError: Cannot read properties of null (reading 'addEventListener')
    at HTMLDocument.<anonymous> ((index):595:16)
(anonymous) @ (index):595

Pourtant tout semble fonctionner, les visites remontent bien, la case à cocher se coche et se décoche, mais je n’arrive pas à savoir si l’exclusion du suivi est opérationnelle ou pas malgré le code erreur ?

A voir ici L’opt out est tout en bas de la page

J’ai cherché sans succès.

Merci de votre aide

Bonjour @helloworld ,

Je vous conseille de les faire chaque cas de test avec une nouvelle fenêtre en navigation privée (Ctrl + Shift + P sous Firefox), et de regarder ensuite si la visite apparaît ou non…
Pour votre erreur, (la politique sécurité de là où je travaille m’empêche de visiter votre site), faites F12 sur votre navigateur préféré, allez dans l’onglet sources de l’outil du développeur, cherchez la case à cocher “Pause sur les exceptions non interceptées” (ou équivalent), cochez là, puis naviguez sur votre site… Vous verrez alors dans la pile des appels de quel endroit vient votre erreur…

Merci Philippe pour votre réponse.

J’ai commencé à tester en navigation privée mais pour l’instant j’ai un peu de mal à distinguer mes propres visites de celles des autres, je vais refaire des tests en soirée quand ce sera plus calme. Je vous tiendrais au courant.

Pour l’erreur, par de rapport avec Matomo, c’est jquery qui génère cette erreur, il est un peu ancien… Merci pour la méthode Pause dans la console, j’ai appris quelque chose !

Bonjour @helloworld
Pour jQuery, je vous conseille de ne plus l’utiliser, car il faut toujours penser à le metre à jour lorsqu’une faille de sécurité a été trouvée, et il est possible de s’en passer sans trop de difficulté :

(niveau de compatibilité IE = 11)

Je vous conseille de repérer votre adresse IP, et de faire ensuite un segment sur cette adresse IP dans Matomo…

Hello Philippe,

A propos de jquery, mon problème c’est que j’ai d’autres scripts UI qui ont en besoin et faire autrement, sort de mes compétences. J’ai essayé la dernière version, j’ai des erreurs quand même…

Mais je me suis aperçu qu’en utilisant la console mais sans faire de pause sur les exceptions, me surligne des lignes du script Matomo pour la case à cocher opt out. Je vais creuser…

Je n’ai pas trouvé ou je peux faire un segment sur mon IP ?

Merci encore
Pierre

EDIT : je continue mes test de remontées avec ou sans l’exclusion de suivi, mais pour l’instant ca semble fonctionner : )

Il faut retrouver son IP (en recherchant dans le journal des visites ou le temps réel, il faut essayer de se retrouver soi-même…).
ensuite, en haut, il y a un genre de bouton image en cliquant dessus, on peut créer un segment…
La définition du segment sera IP du visiteur > Égal > votre IP !

Bonjour à tous,

Merci Philippe, pour cette aide sur la création d’un segment.
Excusez-moi mais j’aurais dû préciser dans mon premier post que j’étais débutant.

Suite à mes tests de ce week-end, je confirme que ça fonctionne très bien dans toutes les situations : navigation normale, privée, case à cocher active, inactive, c’est impeccable !

Donc je verrais ultérieurement si j’ai besoin de créer un segment sur mon IP, d’autant plus que j’ai anonymisé et désactivé tout ce que j’ai pu pour respecter la vie privée de mes visiteurs.

J’ai quand même remarqué une erreur dans la console (navigation normale + suivi accepté ) :
ErrorOptOutIsNull

Quand je clique sur le message, le debogueur pointe cette ligne du script opt out de Matomo :

Je ne sais pas trop ce que cela signifie et si je dois faire quelque chose ?
Merci encore pour votre aide si précieuse.
Pierre

Bonjour @helloworld
Il n’est jamais bon de laisser des erreurs JavaScript… Et pour cause : Votre gestion du consentement semble ne pas fonctionner !
Ce que je comprends de vos copies d’écran, il n’y a pas d’élément avec un id="optout" dans votre document HTML…

1 Like

Merci Philippe,
Je suis plutôt méticuleux mais là j’avoue mon copier/coller du script Matomo a été un peu rapide, il me manquait une ligne, la première, alors forcément…
Maintenant, plus d’erreur, ça fonctionne nickel !
Je suis désolé pour la perte de temps.
Merci mille fois de votre aide !