Модераторы: MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Можно ли изменить адрес текущей страницы в брау-ре, не используя Navigate? 
:(
    Опции темы
Borland_Delphi_6
Дата 13.1.2006, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



Возможно ли как-то реализовать следующую вещь: используя метод Navigate посылаем TWebBrowser на www.somesite.com. На этом somesite.com есть относительные ссылки <a href="link1.html>Link1</a> и <a href="link2.html>Link2</a>. Т.к. браузер "помнит", где находится, то, соответственно при нажатии на эти ссылки он загрузит www.somesite.com/link1.html и www.somesite.com/link2.html. Так вот можно ли как-то заставить браузер "забыть" текущий адрес и заставить его "думать", что он не на www.somesite.com, а на www.anothersite.net?


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
Albinos_x
Дата 13.1.2006, 22:01 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



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


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Borland_Delphi_6
Дата 14.1.2006, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



Albinos_x
Смысле относительные на абсолютные? Честно говоря, не самый подходяший вариант, я с подобной проблемой и так уже намучился smile


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
December
Дата 14.1.2006, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

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



А иначе, вроде, никак...
Без Navigate - прямым присвоением в IHTMLDocument2.location.href...


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Borland_Delphi_6
Дата 14.1.2006, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



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

Т.е. реально Wb.LocationUrl:='www.site1.ru', а браузер считает, что Wb.LocationUrl:='www.anothersite.ru'. Вот.


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
December
Дата 14.1.2006, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

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



Только что пытался прикрутить к LocationURL записываемость - фиг... Похоже,
Цитата(Borland_Delphi_6 @ 14.1.2006, 16:38 Найти цитируемый пост)

реально Wb.LocationUrl:='www.site1.ru', а браузер считает, что Wb.LocationUrl:='www.anothersite.ru'.
невозможно... Разве что проксю прикрутить...


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Borland_Delphi_6
Дата 14.1.2006, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



Ладно, буду искать другие способы решения основной проблемы.


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
p0s0l
Дата 14.1.2006, 20:50 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

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



Цитата(Borland_Delphi_6 @ 14.1.2006, 12:33 Найти цитируемый пост)

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

Поэтому имхо нужно пройтись по всем Document.Links и заменить в href'ах "www.somesite.com" на "www.anothersite.net" (хотя это не полностью поможет, если на странице например есть скрипты перехода, в этом случае нужно в документе менять ссылки путем текстового поиска-замены)...
Добавлено @ 20:51
Цитата(Borland_Delphi_6 @ 14.1.2006, 18:58 Найти цитируемый пост)

Ладно, буду искать другие способы решения основной проблемы.
А какая основная проблема - может мы что-нибудь придумаем ?

Это сообщение отредактировал(а) p0s0l - 14.1.2006, 20:53


--------------------
С уважением, г-н Посол.
PM   Вверх
Borland_Delphi_6
Дата 15.1.2006, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



p0s0l
Не волнуйся smile Проблема уже решена! Скоро этот $%^& браузер моего сайта наконец-то заработает ! ;)


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
Borland_Delphi_6
Дата 15.1.2006, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



Мда, пожалуй, я опять поторопился с выводами... Когда в коде дана относительная ссылка на изображение, браузер пытается грузить ее с адреса about:blank/img.gif... Сейчас попробую что-нибудь придумать, есть одна идейка...


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
Borland_Delphi_6
Дата 15.1.2006, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



По мере продвижения в написании этой бродилки, я все больше и больше начинаю ненавидеть TWebBrowser... Ну да ладно, не в том суть. Несмотря на то, что с картинками я разобрался, было бы очень неплохо, если бы все же существовал какой-то способ обмануть браузер и заставить его думать, что он находится на совершенно другой странице. Пример, для чего мне это надо: сейчас я загружаю html код в браузер не из файла, а из переменной, несколько способов, как сделать это, описано в DRKB. Но каждый из этих способов требует, чтобы в браузер сперва была загружена какая-то страница, пусть тот же about:blank. Следовательно, я гружу этот about:blank, загружаю в браузер html код своей страницы и все относительные ссылки пытаются загружаться с этого самого about:blank. Ладно, фиг с ним, это лечится специальным тегом в HTML коде, который заставляет браузер игнорировать текущий адрес и грузить все относительные ссылки из заранее заданной директории. Но все же проблемы остаются: скажем, при нажатии F5 браузер естественно будет перезагружать about:blank, а не нужную мне страницу. Два выхода, которые я вижу из этой ситуации:
1. Обмануть браузер, заставив его считать, что загружена страница http://localhost/page.php, а не about:blank (возможно ли это, вот вопрос).
2. Ловить нажатие F5 и уже подсовывать браузеру нужный адрес. Повидимому, делать придется именно так, хотя это довольно-таки непрактичный вариант... smile

В общем, если у кого-то есть какие-то догадки, предположения, как реализовать п.1, буду рад выслушать.


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
Borland_Delphi_6
Дата 15.1.2006, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



Извините меня за такое кол-во постов, но с F5 я уже разобрался. Пока нормально вроде бы... Нет смысла ломать головы над сабжем.


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
Borland_Delphi_6
Дата 19.7.2009, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


LoneLINEss
****


Профиль
Группа: Участник Клуба
Сообщений: 2509
Регистрация: 5.11.2002
Где: in fortune dreams ...

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



Всем привет. Спустя 3.5 года всплыла аналогичная проблема: не загружаются файлы, на которые идут относительные ссылки. Проще понять на примере:

1. В TWebBrowser из файла загружается некий HTML документ, внутри которого есть JavaScript, который переадресует браузер на другую страницу сайта, при этом в JavaScripte имеется лишь относительная ссылка на документ.
2. Т.к. вышеобозначенный HTML файл был сохранен на жесткий диск с некоторого сайта, после чего загружен в TWB, то все относительные ссылки оказались невалидными. Если с обычным HTML-кодом проблема решается добавлением в начало документа тега <base>, то JavaScript это нисколько не волнует и он переадресует браузер на несуществующие страницы. Посоветуйте, как бы эдак извернуться? Мне по-прежнему кажется, что лучшим вариантом было бы заставить TWebBrowser думать, что в него загружена не локальная страница, а интернет сайт, но вот реально ли так сделать? В 2006-м году ничего на этот счет выяснить, увы, не удалось.

Добавлено через 10 минут и 27 секунд
Может в OnBeforeNavigate проверять, есть ли в адресе "http://", если есть - пропускать, если нет - проверять существование локального файла, если существует - пропускать, если нет - добавлять адрес сервера и пытаться загрузить из интернета... Пока только такой способ в голову пришел, но какой-то он некрасивый.  smile 


--------------------
Blind Guardian Fan :: BMSTU Student :: A polar bear is a rectangular bear after a coordinate transform.

Мои фотографии
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: ActiveX/СОМ/CORBA"

Rrader
Girder

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Delphi
  • Вопросы по SQL и вопросы по базам данных, не связанные с Delphi, задавать здесь

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема »


 




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


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

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