Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите сделать плагин для Chrome 
:(
    Опции темы
kuksha
Дата 5.5.2016, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 15.6.2011

Репутация: нет
Всего: нет



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

Как оформлять плагины вроде понятно. По крайней мере, Хром воспринял его и установил.

В файл code.js вписал вот такой код:
Код

window.onload=function(){
    var text;
    var a = ['ПлохоеСлово1', 'ПлохоеСлово2'];
    var b = ['замена1', 'замена2'];
    var N=a.length;
    for (var i=0; i < N; i++) 
    {
        document.body.innerHTML = document.body.innerHTML.replace( RegExp( a[i], "g" ), b[i]);
    }
}

Код работает при встраивании в тестовую HTML-страничку. 
Но, в составе плагина код не запускается. То есть, при открытии в Хроме контрольного файла без этого скрипта, замена не происходит - скрипт не запускается. Как правильно это делают?

Дополнение: в фоновом режиме отрабатывает вот эта страничка background.html:
Код

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script type="text/javascript" src="code.js"></script>
    
    </head>
    <body></body>
</html>

В манифесте плагина указал background.html в таком виде:
Код

"background": {
    "page": "background.html" 
  },

PM MAIL   Вверх
igorold
Дата 5.5.2016, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: 2
Всего: 17



А почему не скрипт указываете?

Код

"background": {
    "scripts": ["code.js"]
  },


Этот ответ добавлен с нового Винграда - http://vingrad.com
PM MAIL   Вверх
kuksha
Дата 5.5.2016, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 15.6.2011

Репутация: нет
Всего: нет



Да, спасибо, без прокладок будет короче.
Но, всё равно же не работает...

Первая неприятность.
Скрипт запускается, но только один раз, при открытии Chrome. Но не запускается при открытии новых страниц в нём и при переходе по ссылкам, то есть при открытии вкладок в том числе...
А мне нужно, чтобы он запускался при открытии новой страницы любым способом...

Вторая неприятность.
В целях отладки зменил код на:
Код

window.onload=function RuPo(){
    alert(1);
    document.body.innerHTML = "Hello World!";
    alert(2);
}

В итоге, при запуске Хрома я вижу окошки с единичкой и двойкой, но содержимое страницы не меняется на "Hello World!". Срабатывает какая-то защита на подмену содержимого страницы - как с этим справиться?

Кроме того, в дальнейшем, при принудительном запуске скрипта в уже открытом Хроме кнопкой (режим разработчика) окошко с двойкой вообще не появляется, ну и замены на "Hello World!" тоже нет...

Это сообщение отредактировал(а) kuksha - 5.5.2016, 11:02
PM MAIL   Вверх
ksnk
Дата 5.5.2016, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



А цель - то какая? Просто зафильтровать страничку "от детей"? На единственном компьютере?
С плагинами сам не работал, толком, однако присматривался к Tampermonkey, там схема, вроде, попроще и на каждое открытие окна отдельно срабатывает.

Про alert - лучше им для отладки не пользоваться. Разумнее писать console.log и смотреть в логе. Странных эффектов будет меньше.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
kuksha
Дата 5.5.2016, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 15.6.2011

Репутация: нет
Всего: нет



Цель - знакомые языковеды-любители попросили сварганить некие приспособления для их личных нужд. В виде расширения для Хрома. 
Там не только замена слов, но и их подчёркивание, выделение цветом и прочее... - быстрый наглядный анализ открываемых страниц.

Tampermonkey - ой не хотелось бы дополнительными обвесками пользоваться... они не настолько продвинуты, чтобы им это втолковывать. Должно быть чем проще, тем лучше...


PM MAIL   Вверх
kuksha
Дата 24.5.2016, 14:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 15.6.2011

Репутация: нет
Всего: нет



Ни у кого догадок не появилось?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0461 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.