Extension chrome fonctionne sur refresh/sur la terre, mais pas sur "la navigation interne' [dupliquer]

0

La question

Donc, simplement quand je me pose une page sur youtube qui commence par w* (ce qui signifie qu'une vidéo avec son ID) je suis de tir d'alerte(url) et il fonctionne cependant il ne fonctionne que quand je me pose cette page à partir de l'URL et/ou à l'actualisation. Ce que je suis en train de réaliser est de feu qui alerte lors de la navigation à la page (watch?=...) À PARTIR d'une autre page youtube, ce qui signifie que je suis la navigation interne.

à titre d'exemple: www.youtube.com -> c'est la page d'accueil de youtube Je clique sur une vidéo et j'ai accédez à: www.youtube.com/watch?=aiFUQ9981Qk

cela NE déclenche PAS mon alerte CEPENDANT lorsque j'actualise, il ne déclencheur. comment puis-je déclencher, même lorsque je navigue "à PARTIR de ""au SEIN des" youtube ? Toute entrée serait appréciée. manifeste et Content.js ci-joint...

le manifeste.json

{
    "manifest_version": 2,
    "name": "youtest",
    "version": "1.0.0",
    "content_scripts": [
        {
            "matches": ["https://*.youtube.com/watch?*"],
            "js": ["Content.js"]
        }
    ]
}

Content.js

console.log(window.location.href);
alert(window.location.href);
google-chrome-extension javascript
2021-11-14 01:53:32
1

La meilleure réponse

0
function runScript() {
    if (window.location.href.indexOf('watch?') > -1) {
        alert('this is a video');
        let videoID = window.location.href.slice(
            window.location.href.lastIndexOf('/')
        );
        alert(videoID);
    } else {
        alert('not a video');
    }
}

document.addEventListener('yt-navigate-start', runScript);
2021-11-14 06:48:10

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................