J'apprends à créer des extensions pour Chrome. Je viens de commencer à en développer une pour capter les événements de YouTube. Je veux l'utiliser avec le lecteur flash de YouTube (plus tard, j'essaierai de le rendre compatible avec HTML5).
manifest.json :
{
"name": "MyExtension",
"version": "1.0",
"description": "Gotta catch Youtube events!",
"permissions": ["tabs", "http://*/*"],
"content_scripts" : [{
"matches" : [ "www.youtube.com/*"],
"js" : ["myScript.js"]
}]
}
myScript.js :
function state() { console.log("State Changed!"); }
var player = document.getElementById("movie_player");
player.addEventListener("onStateChange", "state");
console.log("Started!");
Le problème est que la console me donne le "Commencé !" mais il n'y a pas de "L'État a changé !" lorsque je joue/pause des vidéos YouTube.
Lorsque ce code est mis dans la console, il a fonctionné. Qu'est-ce que je fais de mal ?
19 votes
Essayez d'enlever les guillemets autour du nom de votre fonction :
player.addEventListener("onStateChange", state);
4 votes
Il est également à noter que lors de la rédaction des correspondances, n'oubliez pas d'inclure
https://
ohttp://
cewww.youtube.com/*
ne vous laisserait pas emballer l'extension et jetterait Erreur de séparateur de schéma manquant1 votes
Voir aussi bugs.chromium.org/p/chromium/issues/detail?id=478183