0

Chrome拡張機能のスターターとして、誰かが自分のYouTube動画をフルスクリーンに表示するときに私の機能をトリガーしようとしています。私は以下のコードを思いついたが、まだ警告メッセージをトリガーしない。YouTube動画を全画面表示で表示する

manifest.jsonを

{ 
"name": "Ext", 
"version": "0.1", 
"manifest_version": 2, 
"description": "Catching fullscreen.", 
"icons": {"16": "icon_16.png" 
     }, 
"background": { 
    "scripts": ["background.js"] 
}, 
"browser_action":{ 
    "default_title": "Ext", 
    "default_icon": "icon_16.png" 
}, 
"permissions": [ 
    "background", 
    "tabs", 
    "http://*/*", 
    "https://*/*" 
    ] 
} 

background.js

document.addEventListener('DOMContentLoaded', function() { 
var link = document.getElementByClassName('ytp-fullscreen-button'); 

link.addEventListener('click', function() { 
    alert("Fullscreen"); 
    }); 
}); 

私は自分自身を向上させるためにどのようにいくつかのヒントのために非常に感謝するだろうかビデオにカスタムリスナを追加するフルスクリーンイベントを行く疑問を答える横このタイプのアプリでは

答えて

0

extensions architecture overviewを読んでください:拡張の背景ページはウェブページに関連していないので、バックグラウンドページスクリプトはウェブページdocumentまたはイベントに直接アクセスできません。

content scriptfullscreenchangeイベントを使用します(現在、それはベンダープレフィックスの下にあります):

addVendorEventListener(document, 'fullscreenchange', onFullscreenChange); 

function onFullscreenChange(event) { 
    console.log(event); 
} 

function addVendorEventListener(element, eventName, callback) { 
    var vendorName = 'on' + eventName in element ? eventName 
        : 'onwebkit' + eventName in element ? 'webkit' + eventName 
        : 'onmoz' + eventName in element ? 'moz' + eventName 
        : null; 
    if (vendorName) 
     element.addEventListener(vendorName, callback); 
} 

manifest.jsonを:

"content_scripts": [{ 
    "matches": ["https://www.youtube.com/*"], 
    "js": ["content.js"] 
}], 
関連する問題