Расширение Safari - Слишком много введенных сценариев, отвечающих на сообщение

Я пытаюсь кодировать расширение сафари, подобное для Пузырения, Переводят для Chrome.

при нажатии кнопки на панели инструментов она автоматически переводит текст, в настоящее время выбираемый на язык по Вашему выбору с помощью языка Google API.

Проблема, которую я имею, следующая:

Сценарий только становится введенным в основную страницу, но также и в рекламу и подобный материал, который встраивается в страницу. Из-за этого, выделенный текст переводится многократно, потому что все встроенные сценарии на одной странице отвечают на сообщение.

Как я могу удостовериться, что сценарий введен только в правильную страницу, или только правильная страница отвечает?

5
задан Cœur 24 November 2019 в 17:41
поделиться

1 ответ

Возможно, вы могли бы проверить, что страница, на которой внедряется скрипт, не находится внутри фрейма:

if (window == window.parent) { /* you're not inside a frame! */ }

Я не уверен, работает ли это внутри тегов, внедряющих HTML, хотя. Есть вероятность, что да.

1
ответ дан 15 December 2019 в 00:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: