Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как получить код HTML документа после применения скриптов? / 25 сообщений из 27, страница 1 из 2
14.05.2007, 16:28
    #34523907
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Вот для примера у меня код:


<B>SOURCE</B>
<SCRIPT language="JavaScript"> document.write("<I>ROBOT</I>")</SCRIPT>

А документ выглядит так:
<B>SOURCE</B>
<I>ROBOT</I>


Как получить этот документ после применения скриптов?

Как то уже спрашивал, мне ответили, что возможно, но забыл блин, перерыл всю объектную модель, не могу найти... ;-(


documentElement.innerHtml:

<HEAD></HEAD>
<BODY><B>SOURCE</B>
<SCRIPT language=JavaScript> document.write("<I>ROBOT</I>")</SCRIPT>
<I>ROBOT</I> </BODY>

documentElement.innerText:

SOURCE ROBOT
...
Рейтинг: 0 / 0
14.05.2007, 17:07
    #34524097
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Fixin
<HEAD></HEAD>
<BODY><B>SOURCE</B>
<SCRIPT language=JavaScript> document.write("<I>ROBOT</I>")</SCRIPT>
<I>ROBOT</I> </BODY>

ну да, правильно
или document.body.innerHTML
...
Рейтинг: 0 / 0
15.05.2007, 10:50
    #34525407
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
ой да, спасибо, че то я туплю, нужно только теги SCRIPT убрать. ;-)
...
Рейтинг: 0 / 0
15.05.2007, 12:29
    #34525873
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
А вот как бы быстренько вырезать скрипты?
...
Рейтинг: 0 / 0
15.05.2007, 13:11
    #34526029
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Код: plaintext
1.
2.
3.
var s=document.body.innerHTML.toLowerCase();
var a=s.indexOf('<script')
var b=s.indexOf('<\/script>')
var res=s.substring( 0 ,a)+s.substring(b+ 9 ,s.length+ 1 )
...
Рейтинг: 0 / 0
15.05.2007, 15:38
    #34526540
Carat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
document.write('<span id="test">текст</span>');
alet(getElementById('test').innerHTML);
...
Рейтинг: 0 / 0
15.05.2007, 16:21
    #34526731
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Господа, встал вопрос, а как получить исходный код HTML, потому что что в InnerHTML, что в OuterHTML хранится смесь скрипта с его продукцией:

Код: plaintext
1.
2.
3.
<HTML><HEAD></HEAD>
<BODY><B>SOURCE</B>
<SCRIPT language=JavaScript> document.write("<I>ROBOT</I>")</SCRIPT>
 <I>ROBOT</I> </BODY></HTML>

Видите, ROBOT повторяется дважды.

Кстати, конечный HTML (убирая из outerHtml, я получаю так):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Функция обПолучитьКонечныйHTMLКодHTMLУзла(Узел) Экспорт
	Если Узел.tagName="SCRIPT" Тогда
		Возврат "";
	КонецЕсли;
	//Если Р="" Тогда
	Если Узел.children.length= 0  Тогда
		Возврат Узел.outerHTML;
	КонецЕсли;
	Р="";
	Для Каждого Эл ИЗ Узел.children Цикл
		Р=Р+обПолучитьКонечныйHTMLКодHTMLУзла(Эл);
	КонецЦикла;
	//Выделяем часть inner из outer
	Поз=Найти(Узел.OuterHtml,Узел.InnerHtml);
	Если Поз<> 0  Тогда
		Р=Лев(Узел.OuterHtml, Поз- 1 )+Р+Прав(Узел.OuterHtml, СтрДлина(Узел.OuterHtml)-СтрДлина(Узел.InnerHtml)-Поз+ 1 );
	КонецЕсли;
	
	Возврат Р;
КонецФункции

Функция обПолучитьКонечныйHTMLКодHTMLДокумента(Документ) Экспорт
	Если Документ.documentElement=Неопределено Тогда
		Возврат "";
	КонецЕсли;
	Возврат обПолучитьКонечныйHTMLКодHTMLУзла(Документ.documentElement);
КонецФункции


Такой вариант, как предложил товарищ выше не годится, потому что script может встречаться многократно и в составе текстовых строк. ;-)
...
Рейтинг: 0 / 0
15.05.2007, 17:29
    #34527014
PhoenixNET
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Fixin
Код: plaintext
1.
2.
3.
4.
5.
Функция обПолучитьКонечныйHTMLКодHTMLУзла(Узел) Экспорт
	Если Узел.tagName="SCRIPT" Тогда
		Возврат "";
	КонецЕсли;
	

Это 1С что ли? Ну и ужос... %)
...
Рейтинг: 0 / 0
15.05.2007, 17:35
    #34527046
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Fixin
Такой вариант, как предложил товарищ выше не годится, потому что script может встречаться многократно и в составе текстовых строк. ;-)
ах да=)
Код: plaintext
1.
2.
3.
4.
5.
6.
var s=document.body.innerHTML.toLowerCase();
while(true){
var a=s.indexOf('<script')
if(a==- 1 )break;
var b=s.indexOf('<\/script>')
var res=s.substring( 0 ,a)+s.substring(b+ 9 ,s.length+ 1 )
}
<SCRIPT> в тексте выглядит как & lt;script& gt;
А конструкция <script .../>, на сколько я знаю, не валидна
...
Рейтинг: 0 / 0
15.05.2007, 17:37
    #34527054
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
LINUXER
поторопился
Код: plaintext
1.
2.
3.
4.
5.
6.
var s=document.body.innerHTML.toLowerCase();
while(true){
  var a=s.indexOf('<script')
  if(a==- 1 )break;
  var b=s.indexOf('<\/script>')
  s=s.substring( 0 ,a)+s.substring(b+ 9 ,s.length+ 1 )
}
...
Рейтинг: 0 / 0
15.05.2007, 18:01
    #34527194
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
LINUXER Fixin
Такой вариант, как предложил товарищ выше не годится, потому что script может встречаться многократно и в составе текстовых строк. ;-)
ах да=)
Код: plaintext
1.
2.
3.
4.
5.
6.
var s=document.body.innerHTML.toLowerCase();
while(true){
var a=s.indexOf('<script')
if(a==- 1 )break;
var b=s.indexOf('<\/script>')
var res=s.substring( 0 ,a)+s.substring(b+ 9 ,s.length+ 1 )
}
<SCRIPT> в тексте выглядит как & lt;script& gt;
А конструкция <script .../>, на сколько я знаю, не валидна

Ну может быть, может быть, но через DOM как то спокойнее.

Так вопрос остается - КАК ПОЛУЧИТЬ ИСХОДНЫЙ КОД HTML, без мешанины?
...
Рейтинг: 0 / 0
17.05.2007, 09:30
    #34531269
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Ну же, как получить исходный код?
...
Рейтинг: 0 / 0
17.05.2007, 11:49
    #34531796
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Меня тоже этот вопрос интересует.
я с помощью Ajax подгружаю XSL и XML и потом в результате XSLT преобразований, на стороне клиента, получается совершенно другая страница без перезагрузки, и посмотреть её HTML код не могу...
...
Рейтинг: 0 / 0
17.05.2007, 12:17
    #34531961
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Нужно пройти всю иерархию документа поэлементно и создать текст документа из их outerHTML, обрезанных до >. Причем проще это делать с конца. Это долгий, но единственный способ.

А какова конечная цель этой задачи? Если просто посмотреть структуру того, что получилось, то для этого есть специальные инструменты, например IE Developer Toolbar или мой собственный VBA IE Toolbar.
...
Рейтинг: 0 / 0
17.05.2007, 12:28
    #34532018
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Antonariy
А какова конечная цель этой задачи? Если просто посмотреть структуру того, что получилось, то для этого есть специальные инструменты, например IE Developer Toolbar или мой собственный VBA IE Toolbar.
Расскажите пожалуста поподробнее
...
Рейтинг: 0 / 0
17.05.2007, 12:29
    #34532028
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Что рассказать?
...
Рейтинг: 0 / 0
17.05.2007, 12:44
    #34532097
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
AntonariyЧто рассказать?
Что это такое, где скачать и как использовать? :)
...
Рейтинг: 0 / 0
17.05.2007, 12:59
    #34532194
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
IE Developer Toolbar следует искать на сайте автора - небезызвестного микрософта. Свой тулбар мог выложить сюда, но для него требуется VBA 6.3, который весит около 18 мегов. Пользоваться так же как любой другой прогой - жамкать кнопки, фтыкать в результат. Моск поможет понять увиденное =).
...
Рейтинг: 0 / 0
17.05.2007, 13:03
    #34532213
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
AntonariyНужно пройти всю иерархию документа поэлементно и создать текст документа из их outerHTML, обрезанных до >. Причем проще это делать с конца. Это долгий, но единственный способ.

А какова конечная цель этой задачи? Если просто посмотреть структуру того, что получилось, то для этого есть специальные инструменты, например IE Developer Toolbar или мой собственный VBA IE Toolbar.

Это я могу сделать. Это несложно.
Но ведь в outerHTML тоже хранятся продукции скриптов, или я не прав?
счас проверю.
...
Рейтинг: 0 / 0
17.05.2007, 13:06
    #34532230
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
AntonariyIE Developer Toolbar следует искать на сайте автора - небезызвестного микрософта. Свой тулбар мог выложить сюда, но для него требуется VBA 6.3, который весит около 18 мегов. Пользоваться так же как любой другой прогой - жамкать кнопки, фтыкать в результат. Моск поможет понять увиденное =).
Спасибо!
...
Рейтинг: 0 / 0
17.05.2007, 13:37
    #34532380
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Но ведь в outerHTML тоже хранятся продукции скриптов, или я не прав?Я не понял, результат работы скриптов нужен или нет? А вообще как оно там хранится - тайна велика есть. Если взять outerHTML всего документа, то он будет близок к оригиналу. Если брать произвольный элемент, то результат будет вычисляться, учитывая все произведеные над элементом действия. Но и этот результат зависит от разных обстоятельств. Например, если на элемент навешен css- класс, который в каком-нибудь правиле имеет expression, то в outerHTML будет возвращен style с соответствующим свойством, имеющим значение, вычисленное из этого expression'a. Эта особенность IE мне много крови попортила, пока я ее не вычислил.

ЗЫ: Вот как выглядят тулбары:
...
Рейтинг: 0 / 0
17.05.2007, 14:45
    #34532738
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Alex_BBB Antonariy
А какова конечная цель этой задачи? Если просто посмотреть структуру того, что получилось, то для этого есть специальные инструменты, например IE Developer Toolbar или мой собственный VBA IE Toolbar.
Расскажите пожалуста поподробнее
с FF идёт дом-инспектор(780кб, в стандартном установщике)
можно смотреть DOM любого открытого ресурса в виде дерева
...
Рейтинг: 0 / 0
17.05.2007, 15:47
    #34533017
Alex_BBB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
LINUXER, спасибо попробую разобраться.

А вообще есть ли какая-нибудь среда разработки или что-то типа того?
Я скачал http://www.aptana.com/ вроде все круто, даже менюшки все на русском.

Но на деле оказалось фуфлом, даже не смогла нормально определить начальную { и закрывающую } скобки.

Посоветуйте, кто что использует?
(я сейчас phpExpertEditor)
...
Рейтинг: 0 / 0
21.05.2007, 14:43
    #34539735
Fixin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
Дык кто-нибудь таки знает способ получения исходного HTML кода из браузера IE?
...
Рейтинг: 0 / 0
21.05.2007, 15:38
    #34539935
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как получить код HTML документа после применения скриптов?
FixinДык кто-нибудь таки знает способ получения исходного HTML кода из браузера IE?
много раз же уже получали.
совсем садистский вариант:
Код: plaintext
1.
2.
3.
var s=document.scripts;
for(var i= 0 ;i<s.length;i++)
    s[i].parentNode.removeChild(s[i]);
alert(document.body.innerHTML)
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Как получить код HTML документа после применения скриптов? / 25 сообщений из 27, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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