powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Iframe auto-resizing
19 сообщений из 19, страница 1 из 1
Iframe auto-resizing
    #34576310
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люмаю голову у же 2-й день над следующей проблемой:
Есть сайт, некоторые страницы которого должны содержать контент с другого сайта,
причем не важно в DIV блоках или в IFRAME. Но проблема в следующем: контент содержит
относительные ссылки на страницы того же ресурса, откуда он берется => т.е. DIV блок +
загрузка контента в innerHTML с помощью AJAX запроса отпадает. Остается IFRAME, но есть
следующее обязательное требование - в IFRAME не должно быть полос прокрутки и весь размер
его должен менятся в соответствии с высотой контента. Но если загружать контент изменяя
параметр SRC в IFRAME-е, то myIFrame.Document.body.scrollHeight - недоступен (security
ограничения броузера), т.е. невозможно узнать реальный размер загруженного документа, чтобы
отресайзить IFRAME.
Может кто сталкивался с проблемой, подскажите, что тут еще можно придумать?

Заранее спасибо.
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34576415
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какой браузер
для Opera не идёт

я делал что то похожее
поищу
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34576432
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй так у меня работает в IE MOZILLA
таймер если запрос долгий


<script language="JavaScript">
var w, q="0"
function AA(a)
{
var p="I1" //iframe
document.getElementById(p).width=2
document.getElementById(p).height=2
document.getElementById(p).style.width=2
document.getElementById(p).style.height=2
q="0"

document.getElementById(p).src=a //запрос
w=setInterval("SSS()",500)
}

function SSS()
{
var p="I1" //iframe

if(q=="1")
{
clearInterval(w)



if (document.getElementById(p).contentWindow.document.body.scrollHeight)
{
var y=document.getElementById(p).contentWindow.document.body.scrollHeight + 10
var x=document.getElementById(p).contentWindow.document.body.scrollWidth + 10

}
else if(document.getElementById(p).contentWindow.document.body.offsetHeight)
{
var y= document.getElementById(p).contentWindow.document.body.offsetHeight + 10
var x= document.getElementById(p).contentWindow.document.body.offsetWidth + 10

}

document.getElementById(p).width=x + "px"
document.getElementById(p).height=y + "px"
document.getElementById(p).style.width=x + "px"
document.getElementById(p).style.height=y + "px"

}
}

function WWW()
{
q="1"
}

</script>

<html>
<body onload="AA(запрос)" >
<input type="button" value="q" onclick="AA(другой запрос)">
<input type="button" value="w" onclick="AA(ещё другой запрос)">
<table >
<tbody>
<tr>
<td>
<iframe onload="WWW()" width="100" height="100" name="I1" id="I1" src="" />
</td>
</tr>
</tbody>
</table>
</body>
</html>
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34576762
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
michael Rкакой браузер
для Opera не идёт

я делал что то похожее
поищу

Поищи пожалуйста, браузеры: IE, FF
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34576774
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To michael R

Спасибо, не заметил следующий пост.
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34576795
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Твой скрипт выдает ошибку на строке:
Код: plaintext
1.
if (document.getElementById(p).contentWindow.document.body.scrollHeight)

Ошибка, как я и описал раньше: Access denied
Смотрел в браузере IE 6.0
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34576910
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а сам запрос в каком виде
нужен полный путь+ HTTP://....
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34577831
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запрос такой:

http://google.com
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34577875
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а тебе только Iframe нужен ?
другое не пойдёт
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34577882
max_from_sumy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пойдет любой код, который будет показывать контент с другого домена и при этом будут работать относительные ссылки внутри таких "внешних" страниц. Хотя бы идею, весь код не обязательно приводить.
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34577947
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
идея такая

запрос к Iframe (скрытый на форме )
var idFrm="FRAME1"
document.getElementById(idFrm).src=запрос
запустить таймер

есть таблица и её ячейка с Id(уникальное)


функция на таймер
проверять если загрузился Iframe
if(document.getElementById(idFrm).contentWindow.document.body.innerHTML!="")
{
clearInterval(timer1)
document.getElementById(id).innerHTML= document.getElementById(idFrm).contentWindow.document.body.innerHTML
}

ячейка сама раздвинется

попробуй так
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34577952
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не уверен по -поводу разных браузеров
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #34577978
Фотография michael R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по-поводу изменения Iframe атоматически
у меня тоже уже не работает
поставил новые версии Mozilla / и IE
в старых работало ...
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #35135262
MXSky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня таже задача!
Кто-нибудь решил ее???
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #35151358
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообщем, решил так: в документе, который загружается во фрейм пишу функцию, которая выполняется при загрузке этого документа:

function movesize()
{
//subwin - имя фрейма, в который загружается документ
subw = parent.document.getElementById('subwin'); //поиск элемента в родителе
subw.style.height = document.body.scrollHeight+'px'; //считывание и установка высоты
}
<body OnLoad="movesize();">

Только теперь проблема в другом: если документ грузить не через фрейм, а, так сказать самостоятельно, то родительского документа не существует, следовательно, и искать не в чем.

Вот это событие надо как-нибудь обработать.
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #35151371
Korcar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как оказалось, проблема решается обычной проверкой на существование искомого объекта. Вот немного модифицированная функция:
function movesize()
{
if (parent.document.getElementById('subwin'))
{
subw = parent.document.getElementById('subwin');
subw.style.height = document.body.scrollHeight+'px';
}
}
Работает в IE и Opera
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #35151384
Фотография alexzander77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нечитал, но интерестно = а отпарсить все ссылки и поменять их на абсолютные - разве не будет работать?
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #35153493
Спецы, все-то оно хорошо, но вот дела... Не поленился бы кто-нить, да написал полный код Приемной страницы, а то у меня не работает... Какой-то тег забыл, что ли или запятую...

Я еще не волшебник, я только учусь... Спасибо...
...
Рейтинг: 0 / 0
Iframe auto-resizing
    #35153719
Фотография alexzander77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в результате выполнения вотэтого
Код: plaintext
1.
2.
3.
4.
<?
$a = file_get_contents("http://127.0.0.1/f2-f2a/_f2-f2a.php");
$b=preg_replace("/(window.open\(')(.*','_.*'\))/","$1http://127.0.0.1/f2-f2a/$2",$a);
echo($b);
?>
получаем страницу с кликабельными (изначально относительными) ссылками.

не яваскрипт, конечно. да и под "относительной ссылкой" иногда понимаются разные совсем вещи.

ну, ваапщета, и регексп простенький - не учитывает всех условий...

но у мны работает))))

ща попробую то-же, но на ЖС
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Iframe auto-resizing
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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