mirror of
https://github.com/GoogleChrome/chrome-extensions-samples.git
synced 2026-03-27 13:29:34 +07:00
* Ignores archived samples * Uses eslint/recommended rules * Runs prettier and eslint (including --fix) pre-commit via husky * Adds new npm scripts: 'lint', 'lint:fix' and 'prettier' * Does not lint inline js code * Fix all prettier and eslint errors * Add custom prettier rules * Apply custom prettier rules * Update readme to explain how to setup the repo * addressed comments
33 lines
791 B
JavaScript
33 lines
791 B
JavaScript
const injectFile = document.getElementById('inject-file');
|
|
const injectFunction = document.getElementById('inject-function');
|
|
|
|
async function getCurrentTab() {
|
|
const queryOptions = { active: true, currentWindow: true };
|
|
const [tab] = await chrome.tabs.query(queryOptions);
|
|
return tab;
|
|
}
|
|
|
|
injectFile.addEventListener('click', async () => {
|
|
const tab = await getCurrentTab();
|
|
|
|
chrome.scripting.executeScript({
|
|
target: { tabId: tab.id },
|
|
files: ['content-script.js']
|
|
});
|
|
});
|
|
|
|
function showAlert(givenName) {
|
|
alert(`Hello, ${givenName}`);
|
|
}
|
|
|
|
injectFunction.addEventListener('click', async () => {
|
|
const tab = await getCurrentTab();
|
|
|
|
const name = 'World';
|
|
chrome.scripting.executeScript({
|
|
target: { tabId: tab.id },
|
|
func: showAlert,
|
|
args: [name]
|
|
});
|
|
});
|