Увеличить размер фрейма

Увеличить размер фрейма

от Andrej Gojnasch -
Количество ответов: 5

Здравствуйте!

Загрузив в курс .htm-страницы упражнений, получаем на выходе фрейм .../mod/resource/... , слишком маленький по высоте, что совершенно неудобно:


Как можно адаптировать высоту фрейма к размеру самой .htm(l)-страницы или просто задать её? Попытки изменить настройки фреймов по умолчанию пока не помогли...

Заранее спасибо за ответ.

В ответ на Andrej Gojnasch

Re: Увеличить размер фрейма

от Vadim Tabunshchik -
Изображение пользователя Developers
слишком маленький по высоте, что совершенно неудобно

В настройках выберите «Открывать в новом окне» или «Во всплывающем…». Без разницы улыбаюсь

Как можно адаптировать высоту фрейма к размеру самой .htm(l)-страницы или просто задать её?

Высота фрейма уже адаптирована под высоту содержимого основной страницы. Чем больше по высоте будет основное окно (много блоков на странице, развернуты или свёрнуты блоки и т. п.), тем больше будет высота фрейма и наоборот. Это делается js-скриптом и без правки кода в файле /lib/javascript-static.js вы это никак не измените. Вот тут этот вопрос уже обсуждали: https://moodle.org/mod/forum/discuss.php?d=193543#p843060

В ответ на Vadim Tabunshchik

Re: Увеличить размер фрейма

от Andrej Gojnasch -

Вадим, спасибо.

Я нашёл эту часть кода:

        var headerheight = get_htmlelement_size('page-header', 'height');

        var footerheight = get_htmlelement_size('page-footer', 'height');

        var newheight = parseInt(Y.one('body').get('docHeight')) - footerheight - headerheight - 100;

        if (newheight < 400) {

            newheight = 400;

        }

        obj.setStyle('height', newheight+'px');

        obj.setStyle('display', '');

    };

Это, конечно, совсем не моё, но нельзя ли изменить здесь параметр "в пикселях" на "в %"? Прежде чем пробовать "колдовать", просто спрошу. Чисто теоретически...


Дело в том, что речь идёт о группе .htm(l)-файлов в одном фрейме, очень разных по своей высоте: что-то меньше, что-то намного больше...

В ответ на Andrej Gojnasch

Re: Увеличить размер фрейма

от Vadim Tabunshchik -
Изображение пользователя Developers

В % не получится, в скрипте функции берут размеры элементов DOM веб-страницы в пикселях. Уже опосля того, как сработают CSS-стили и т. д.

В ответ на Vadim Tabunshchik

Re: Увеличить размер фрейма

от Andrej Gojnasch -
Вадим, здравствуйте.
После обновления сайта до версии Moodle 3.9.1 (Build: 20200713) возникла прямо противоположная проблема.

Речь идёт об отображении одного или нескольких .htm(l)-файлов в одном фрейме. Высота фрейма стала адаптироваться под высоту страницы в целом. Это решение предыдущей проблемы, но теперь при выполнении заданий в тесте окно отображения промежуточных результатов неизменно центрируется по высоте, "выскакивая" во фрейме гораздо ниже (не на поле самого задания, как это было ранее), и пользователю каждый раз (а в тесте это может быть не 10 и даже не 20 раз, а больше) приходится прокручивать страницу вверх, что при наличии таймера в задании есть реальная трата времени...

Как добиться отображения этого окошка на поле самого задания (задания создаются в HotPotatoes)?
См.: http://online.all-de.com/mod/resource/view.php?id=1884 (временный пароль гостевого доступа: 1-2-Oktober)