Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как убить все скрипты в документе HTML / 25 сообщений из 28, страница 1 из 2
20.06.2007, 16:05
    #34608300
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Шаг один я сделал - убил все внутри тегов <SCRIPT>, но блин, остались еще например такие теги:
<BODY onload="start()">
Как бы отключить на странице выполнение таких тегов или вообще убить все такие теги?
Пройтись по коллекции атрибутов документа и убить все атрибуты, которые начинаются на on?
...
Рейтинг: 0 / 0
20.06.2007, 17:04
    #34608562
vasa_c
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Чего? Зачем? Куда?
В текстовом редакторе вручную вырезать.
Чем можно пройтись по коллекции атрибутов если все сценарии убиты?
...
Рейтинг: 0 / 0
21.06.2007, 09:19
    #34609546
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
vasa_cЧего? Зачем? Куда?
В текстовом редакторе вручную вырезать.
Чем можно пройтись по коллекции атрибутов если все сценарии убиты?

Есть текст HTML, нужно программно по нему пройтись и убить все вызовы сценариев, чтобы не выдавалась ошика.

Вы еще не понимаете сути задачи?
ОК.
Создаю объект HTMLFile.
Загружают в него текст HTML.
Далее, делаю парсинг, чтобы убить все вызовы скриптов.
Как мне найти эти вызовы, в натуре?
...
Рейтинг: 0 / 0
21.06.2007, 12:06
    #34610235
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
может просто выключить выполнение скриптов?
...
Рейтинг: 0 / 0
21.06.2007, 15:00
    #34611095
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
А что за объект HTMLFile?
...
Рейтинг: 0 / 0
13.07.2007, 19:13
    #34658631
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
LINUXERможет просто выключить выполнение скриптов?

Хахаха, в IE думаю это не проще!
...
Рейтинг: 0 / 0
17.01.2008, 09:46
    #35067245
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Вот кстати, код, который вырезает все скрипты типа <BODY onload="..."> которые в сохраненном документе вызывают ошибки выполнения скрипта:


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
    Для Каждого Элемент из П.HTMLДокумент.all Цикл
        Атрибуты=Элемент.attributes;
        Если Атрибуты<>Неопределено Тогда
            КоличествоАтрибутов=Атрибуты.length();
            Для Инд= 1  По  КоличествоАтрибутов Цикл
                Атрибут=Атрибуты.item(Инд- 1 );
                Если ВРег(Лев(Атрибут.Name, 2 ))="ON" Тогда
                    Атрибут.Value="";
                КонецЕсли;
            КонецЦикла;
        КонецЕсли;
        //НовыйАдресСсылки=обПолнаяСсылкаПоТекущейСсылке(П.HTMLДокумент.url, Элемент.href);//Присвоить(Элемент.href, "http://www.forum.mista.ru/index.php?user_id=3332&page=1")
 
        //Заменяем локальные ссылки на глобальные
 
    КонецЦикла;
...
Рейтинг: 0 / 0
17.01.2008, 18:38
    #35069630
apapacy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Коллекция all содкржится только в ослике
...
Рейтинг: 0 / 0
18.01.2008, 18:16
    #35072482
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
У моего метода (All) есть недостаток - коллекция all очень большая, особенно в больших файлах.
Перебирается долго.
Можно:
1. Как нибудь найти все атрибуты, начинающиеся на on, или хотя бы по имени, т.е. например onLoad, onclick и т.п.
2. Вставить какую-нибудь команду в начало файла, чтобы она директивно запретила выполнение всех скриптов на странице.
...
Рейтинг: 0 / 0
19.01.2008, 20:26
    #35073619
Trombon
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Fixin,

а страницы статические или динамически создаются? Если динамически, то в принципе довольно легко это сделать средствами php... Может, обощённо опишете ситуацию?
...
Рейтинг: 0 / 0
20.01.2008, 03:36
    #35073819
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
С такими вещами просто замечательно справляется библиотека jquery.
Например, вот ссылка на описание ее возможностей: тынц
...
Рейтинг: 0 / 0
21.01.2008, 10:47
    #35075085
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
IDVsbruckС такими вещами просто замечательно справляется библиотека jquery.
Например, вот ссылка на описание ее возможностей: тынц

Библиотека - это конечно хорошо, но как ее прикрутить к IE? То бишь, за счет чего она выруливает?
...
Рейтинг: 0 / 0
22.01.2008, 17:12
    #35079537
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Что-то мы зашились ...
Было бы неплохо вернуться к истокам: что надо автору? (ответ, что убить все скрипты, не катит; их же тоже для чего-то надо "убивать" ...)
...
Рейтинг: 0 / 0
22.01.2008, 18:57
    #35079894
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
IDVsbruckЧто-то мы зашились ...
Было бы неплохо вернуться к истокам: что надо автору? (ответ, что убить все скрипты, не катит; их же тоже для чего-то надо "убивать" ...)

Да ничего мы не зашились.
Я хочу чтобы не выскакивало сообщение об ошибке выполнения скрипта при открытии сохраненной страницы.
Для этого недостаточно убрать все теги SCRIPT, нужно очистить все атрибуты начинающиеся на on, например onclick, onLoad и т.п., которые генерируют ошибки скриптов.
Или найти служебный тег, который вообще нафиг отключит выполнение скриптов на странице.
Задача предельно ясна. Перебор коллекции all для IE слишком долго работает, чтобы очистить все атрибуты, начинающиеся на on.
...
Рейтинг: 0 / 0
22.01.2008, 20:14
    #35080009
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Понятно. Правильнее было бы спросить: какими средствами можно отловить баг в скрипте (... потому что ИЕ не показывает строку с ошибкой)? - Я правильно понял?

Совет: поставь для теста фирефох :) - и для отладки кросс-браузерности полезно, и там в меню есть консоль ошибок, которая покажет тебе точное место возникновения ошибки, почему и даже может подсказать что надо сделать. - Не убивают всех питомцев, чтобы посмотреть, кто проглотил любимую пуговицу, - проще обождать пока все про..рутся.
...
Рейтинг: 0 / 0
17.03.2008, 18:20
    #35196278
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
IDVsbruckПонятно. Правильнее было бы спросить: какими средствами можно отловить баг в скрипте (... потому что ИЕ не показывает строку с ошибкой)? - Я правильно понял?

Совет: поставь для теста фирефох :) - и для отладки кросс-браузерности полезно, и там в меню есть консоль ошибок, которая покажет тебе точное место возникновения ошибки, почему и даже может подсказать что надо сделать. - Не убивают всех питомцев, чтобы посмотреть, кто проглотил любимую пуговицу, - проще обождать пока все про..рутся.

Нет, мне не надо искать баг, мне надо чтобы не выдавались сообщения об ошибках.
В настройках IE этого сделать нельзя, поэтому единственный способ - убить все скрипты.
...
Рейтинг: 0 / 0
17.03.2008, 18:43
    #35196325
alexzander77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
а отпарсить текст?
вот просто тупо отпарсить?

=~/<sctipt.*>.*</script>//gi
=~/\w\(.*\);?//пш

те выкинуть все теги скрипт
и выкинуть все конструкции типа хххх() (вызовы функций)
...
Рейтинг: 0 / 0
18.03.2008, 01:53
    #35196751
IDVsbruck
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
А
Код: plaintext
window.onerror = null;
пробовал?
...
Рейтинг: 0 / 0
19.05.2008, 16:49
    #35321373
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
alexzander77а отпарсить текст?
вот просто тупо отпарсить?

=~/<sctipt.*>.*</script>//gi
=~/\w\(.*\);?//пш

те выкинуть все теги скрипт
и выкинуть все конструкции типа хххх() (вызовы функций)

Так и делаю...
Но ошибка не в тегах Script, а в атрибутах типа onClick=""
То бишь надо атрибуты удалять.
А пока их найдешь и удалишь по коллекции all, времени минут до 5 на большие файлы тратится.

Но я нашел алгоритм - разбираю текст документа в XML, нахожу быстро последовательным чтением все эти теги on, а потом удаляю их в исходном документе... Быстро получается. ;-)
...
Рейтинг: 0 / 0
19.05.2008, 16:50
    #35321375
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
IDVsbruckА
Код: plaintext
window.onerror = null;
пробовал?

Гм, попробую, а куда это вставлять...
...
Рейтинг: 0 / 0
19.05.2008, 20:05
    #35321817
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Поделись всё-таки своей проблемой. А то ведь говоришь только частями, причём выбираешь их из своих собственных представлений о том как чего хочешь получить - а ведь никто не знает, чего надо...
...
Рейтинг: 0 / 0
20.05.2008, 12:01
    #35322798
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
IDVsbruckА
Код: plaintext
window.onerror = null;
пробовал?

Попробовал, там и так стоит window.onerror=null.
В частности я смотрел Document.ParentWindow.onerror.
...
Рейтинг: 0 / 0
20.05.2008, 12:03
    #35322804
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
ShSergeПоделись всё-таки своей проблемой. А то ведь говоришь только частями, причём выбираешь их из своих собственных представлений о том как чего хочешь получить - а ведь никто не знает, чего надо...

Проблема в том, что я лажу по интернету не через IE, а через компонент WebBrowser.
И у меня возникают ошибки java-script, выдается предупреждение и это никак! нельзя отключить...

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

Т.е. мою проблему решил бы способ отключить оповещения об ошибках сценария javascritp.
...
Рейтинг: 0 / 0
20.05.2008, 12:09
    #35322833
зы
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
ну что, научился вырезать <script> из текста? а теперь почитай, например, это http://namb.la/popular/tech.html, и пойми, как многого ты ещё не умеешь :)
...
Рейтинг: 0 / 0
20.05.2008, 12:09
    #35322834
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как убить все скрипты в документе HTML
Fixin[quot ShSerge]...я лажу по интернету не через IE, а через компонент WebBrowser...
С отрубленными скриптами - много не налазишь. А ты пробовал вместо этого компонента активеХ DHTMLEdit в режиме бровзе поюзать?
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как убить все скрипты в документе HTML / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]