>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Удаление скриптов из страницы http://forum.mozilla-russia.org/viewtopic.php?id=65619 |
fireday2 > 02-11-2014 18:59:00 |
нужно получить список подгружаемых на странице скриптов до конца загрузки страницы (до начала работы скриптов) мои мысли: Выделить код Код:tabs.on('ready', function(tab) { var includeUrl = tab.url; if (includeUrl.indexOf('/') > 0) { worker = tab.attach({ contentScriptFile: self.data.url("remove_scripts.js") }); worker.port.emit('SubstitutionList', SubstitutionList, SubstitutionListSize); } }); remove_scripts.js Выделить код Код:self.port.once('SubstitutionList', function(SubstitutionList, SubstitutionListSize){ переменная page, в которую записывается конечный код страницы цикл с предусловием пока поиск в странице '<script' не даст -1 а=поиск в странице '<script' б=поиск начиная с места нахождения 'src=' в=поиск до '></script>' д=промежуток (от б до в) сравнивается с передаваемым списком если нет совпадений - копируем все в page, если есть совпадение, копируем вырезая скрипт конец цикла присваиваю коду страницы значение = page }); Правильно ли? Как работает Adblock и ему подобные плагины, удаляющие рекламу? |
HaGEN > 23-11-2014 12:51:21 |
Очень хорошее и правильное дело задумал, только вот помочь не могу ибо не силен. Может тока подсказать, и то на примере другого бравзера. скрытый текст Выделить код Код:// ==UserScript== (function () { if (false || (new RegExp("^https?:\\/\\/[www.]*donbassforum.net\\/[^i]?.*$")).test(document.location.href)) window.opera.addEventListener('BeforeScript', function(e) { if(e.element.text.indexOf('window.document.getElementById("caa0")')!=-1) e.preventDefault(); }, false); })(); для форума где есть гаццкий inline-script тут в теме писал подробно. ну нешмагла я, нешмагла... |
Dumby > 23-11-2014 17:59:34 |
HaGEN |