Я не уверен, как правильно задать этот вопрос, потому что это трудно объяснить, поэтому я буду использовать пример.
Я пытаюсь выяснить, как активировать что-то вроде букмарклета, используя ссылку в popup.html расширения chrome, которое будет взаимодействовать с текущей вкладкой.
Например: если щелкнуть значок расширения Chrome, появится всплывающее окно (обычное раскрывающееся окно). В этом окне будет, скажем, кнопка, которая увеличивает размер изображений (например, букмарклет для панели закладок).
Я хочу, чтобы эта кнопка взаимодействовала с текущей открытой вкладкой, а не со страницей popup.html.
У меня есть соответствующие разрешения (все URL и вкладки) внутри манифеста, а также определяемые сценарии. Там все хорошо. Но я знаю, что мое решение (не работающее), вероятно, далеко от истины, и я могу даже не быть близким на этом этапе. Поэтому я прошу помощи здесь.
background.js
function zii() {
function zoomImage(image, amt) {
if (image.initialHeight == null) { /* avoid accumulating integer-rounding error */
image.initialHeight = image.height;
image.initialWidth = image.width;
image.scalingFactor = 1;
}
image.scalingFactor *= amt;
image.width = image.scalingFactor * image.initialWidth;
image.height = image.scalingFactor * image.initialHeight;
}
var i, L = document.images.length;
for (i = 0; i < L; ++i) zoomImage(document.images[i], 2);
if (!L) alert("This page contains no images.");
}
popup.html
<button onClick="zii()">Test</button>
Фоновая функция также связана внутри страницы popup.html. Реальная страница popup.html очень большая, поэтому я просто показал ее основы здесь, не включая весь соответствующий код, относящийся к другим аспектам расширения.
Я, очевидно, понятия не имею, что я делаю неправильно или возможно ли то, что я пытаюсь сделать.
Объективное резюме:
Проще говоря, я просто хочу нажать на кнопку в popup.html и увеличить размер изображений на открытой в данный момент вкладке (так же, как вы сделали бы это с помощью букмарклета).