Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

iframe в ip.content (3.3.3.)

Что хотелось бы получить:

- на всё окно контента вывод через iframe (больше, вроде способов нет) содержания сайта с поддомена. Это костыль из-за отсутствия работающего специфического модуля и чтобы не рисковать будущими обновлениями.

 

Как это видится:

- создание страницы в Контенте, html, убираются "хлебные крошки";

- в ней размещается iframe;

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

 

Читал о некторых реализациях, но там было со скриптами. Какой вариант подскажите?

Рекомендованные сообщения

  • Автор

Это я местный зоофорум указал, т.к. надо было что-то указать в форме, без формы не регистрируется.

А что у них за пиратка? :)

 

У меня пока всё на локалхосте, указывать нечего, увы. :(

 

p.s. Уже и ботам отвечаю. :(

Изменено пользователем Slowpoke

Не существует такого параметра для iframe, чтобы он менял высоту по своему содержимому. Не знаю, почему, видимо, разработчики браузеров нашли это излишним, или потенциально опасным. iframe же оторван от родительского окна, и часто ведет вообще на другой домен и исполняется в отдельной песочнице. Однако, есть простая уловка на javascript, позволяющая ему подгоняться по окончании загрузки контента. Для этого:

 

1. В теле страницы, что выводится в iframe, в тег body добавляете:

 

<body onload='parent.fitmebaby(document.body.scrollHeight)'>

 

2. В шаблон страницы IP.Content фрейм добавляете вместе с кодом:

 

<script type="text/javascript">
function fitmebaby(newHeight)
{
   document.getElementById('my_iframe').style.height = parseInt(newHeight,10)+10+'px';
}
</script>
<iframe id="my_iframe" src="/blabla.html" border="0" style="width:100%;height:500px;"></iframe>

 

А еще у вас есть куча других вариантов, начиная от подгрузки контента php-скриптом, заканчивая ajax-скриптами.

  • 2 недели спустя...
  • Автор

А еще у вас есть куча других вариантов, начиная от подгрузки контента php-скриптом, заканчивая ajax-скриптами.

Спасибо, метод сработал, хорошая уловка. :)

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

 

Включение php приводит к ошибкам, что при include, что при require.

 

В принципе, паллиативное решение есть: нарисовать включаемом на другом сайте аналогичный header. :)

 

Уже немного оффтопик, - а как сделать это аякс-скриптом?

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.