Отправляет email-рассылки с помощью сервиса Sendsay

iframe

Здравствуйте, inet.

как сделать чтобы iframe стал размером с документ содержащийся внутри
него.
где то слышал что если не указывать размеры то он станет таким, но это
не так. iframe принимает высоту примерно 200px. должно быть около 4000

и как достучатся к iframe через JavaScript, чтобы не выскакивала
ошибка: "отказано в доступе"

у мозилы оказывается нет метода window.attachEvent(
есть альтернативы?

Ответить   Sat, 16 Apr 2005 00:56:34 +0400 (#352100)

 

Ответы:

Привет!

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

А разве document.frames[0] не работает? Не выскакивает ли "отказано в
доступе" из-за того, что адреса взяты с разных сайтов? Приведи полный
документ.

А назначать события прямо в теге не покатит?

Пашка

16 апреля 2005 г., 0:56:34, Raphael <dj_rapha***@m*****.ru> wrote:





библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Sun, 17 Apr 2005 14:07:00 +0400 (#352610)

 

Здравствуйте, Пашка.
Вы писали 17 апреля 2005 г., 14:07:00: mid:20050417140523.3526***@i*****.subscribe

http://raphael.narod.ru/guestbook.xml
http://raphael.narod.ru/guestbook.html
да именно из за того что с разных сайтов, и типы документов разные
но достучаться всё равно надо.

тоже по тому что источники разные.
приатачить надо из скрипта подсоединяемого из другого файла.

Ответить   Sun, 17 Apr 2005 20:36:37 +0400 (#352734)

 

Извини, Рафаэль, но мне тебя придется огорчить.

Политика безопасности веб-приложений, Яваскрипта и Явы во всех
браузерах такова, что из приложения с одного сайта никаким образом
нельзя проникнуть внутрь документов и приложений с другого сайта.

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

Пашка

17 апреля 2005 г., 20:36:37, Raphael <dj_rapha***@m*****.ru> wrote:





библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Sun, 17 Apr 2005 20:43:31 +0400 (#352737)

 

Меня беспокоит такой вопрос, а что если какой-нибудь умник возьмёт, и
разместит форму с моего сайта на своём, он сможет воспользоваться
скриптом, который на моём сервере? Если да, то как можно исключить
такую возможность?


--
Ilya Tatarnikoff
mailto:webmast***@r*****.com
ICQ number: 317134899
PGP key ID: 0x18EA20AE

Monday, April 18, 2005 - 3:09:47 PM





библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Ilya Tatarnikov Mon, 18 Apr 2005 15:12:46 +0800 (#352926)

 

Привет, Илья!

Конечно сможет. :)

В скрипте проверять переменную $_SERVER['HTTP_REFERER'] (если это PHP)
- она должна указывать на страницу, на которой находится ваша форма.

Пашка

18 апреля 2005 г., 11:12:46, Ilya Tatarnikov <jackso***@r*****.com> wrote:






библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Mon, 18 Apr 2005 11:27:25 +0400 (#352977)

 

А если это Perl?
$ENV{'HTTP_REFERER'} ???

Monday, April 18, 2005 - 3:27:25 PM, Пашка <pav***@l*****.ru> wrote:








--
Ilya Tatarnikoff
mailto:webmast***@r*****.com
ICQ number: 317134899
PGP key ID: 0x18EA20AE

Monday, April 18, 2005 - 9:00:09 PM





библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Ilya Tatarnikov Mon, 18 Apr 2005 21:02:16 +0800 (#353156)

 

Как гласит документация по Перлу: "На большинстве серверов да, но
проверьте на своем - может там по-другому". :)

Пашка

18 апреля 2005 г., 17:02:16, Ilya Tatarnikov <jackso***@r*****.com> wrote:



















библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Mon, 18 Apr 2005 16:38:47 +0400 (#353159)

 

Здравствуйте, Пашка.
Вы писали 17 апреля 2005 г., 20:43:31: mid:20050417204147.3527***@i*****.subscribe

дожен же быть способ просто передать сообщение из одного фрейма
другому, без доступа к элементу document
а так бя скриптом изнутри узнал бы размеры документа, передал бы инфу
внешнему, тот бы изменил размеры

Ответить   Mon, 18 Apr 2005 21:33:20 +0400 (#353472)

 

Нет, такого способа нет. Все, что находится внутри HTML-страницы,
является составной частью document.

Кстати, к твоему сведению: такая штука (если конечно у тебя документы
с одного и того же сайта) работает только в IE. В других браузерах
такое не работает в принципе (кажется, есть один, в котором тоже
работает, но в остальных - нет). Все размеры объектов определяются
единожды при загрузке документа.

Пашка

18 апреля 2005 г., 21:33:20, Raphael <dj_rapha***@m*****.ru> wrote:





библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Tue, 19 Apr 2005 09:57:51 +0400 (#353524)

 

Может быть пригодится следующее:

<iframe id="myframe" src="some_document.html" style="width: 1px; height: 1px;"></iframe>
<script language="JavaScript">
function resizeFrame()
{
myframe.window.resizeTo(myframe.document.body.scrollWidth+20,myframe.document.body.scrollHeight+20);
}
document.body.onload = resizeFrame;
</script>

Не знаю, как в Mozilla (я им просто не пользуюсь), но в IE6 работает.
Особенность IFRAME в том, что его набор методов и свойств такой же,
как и у обычного окна (window). Потому часто возникают неувязки, в
основном из-за того, что нельзя обратиться из скрипта к атрибуту
style, хотя прописывать его в самом теге можно.

Ответить   "Alex A. Liplianin" Tue, 19 Apr 2005 18:14:05 +0300 (#353928)

 

Привет, Алекс!

1px;"></iframe>

Именно такие вещи не работают в Мозиле, Нетскейпе и Опере.

Как раз к атрибуту style можно обращаться из скрипта. Причем во всех
браузерах. Хотя не любой параметр можно менять так, чтобы это
срабатывало во всех браузерах.

Пашка

19 апреля 2005 г., 19:14:05, Alex A. Liplianin <al***@t*****.by> wrote:

1px;"></iframe>





библиотекa сайтостроительства http://www.i2r.ru/static/244/

Ответить   Tue, 19 Apr 2005 20:17:06 +0400 (#353966)