Вопросы и ответы

Ниже приведены ответы на наиболее часто встречающиеся вопросы по «Вердж3Д» и связанным с ним технологиям.

Лицензирование и поддержка

Я купил «Вердж3Д». Как мне скачать версию без водяных знаков?

После покупки (через несколько минут или часов в зависимости от вашего часового пояса) вам будет отправлено электронное письмо с лицензионным ключом. Скопируйте этот ключ и вставьте его в диалоговом окне Licensing Manager диспетчера приложений. Это сделает уже установленную копию «Вердж3Д» лицензионной и удалит водяной знак из ваших приложений.

Кроме того, если вы приобрели корпоративную или максимальную версию «Вердж3Д», вы можете загрузить специальный дистрибутив разработчика, содержащий исходный код «Вердж3Д». Чтобы получить его, зайдите в свой аккаунт на сайте «Софт Эйт Софт» и нажмите кнопку «Загрузки». То же самое касается всех пакетов материалов, приобретенных у «Софт Эйт Софт».

На сколько компьютеров можно установить «Вердж3Д»? Сколько пользователей могут использовать одну лицензию?

Лицензия назначается на человека («Фриланс») либо на организацию («Малый бизнес», «Корпоративная»). Количество установок не ограничено. В случае варианта «Фриланс» только один человек может использовать ПО «Вердж3Д». Для лицензий «Малый Бизнес», «Корпоративная» или «Максимальная» ПО может использовать до 5 разработчиков.

Каковы ограничения пробной версии «Вердж3Д»? Я могу сделать ... ?

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

В частности, вы можете использовать «Вердж3Д» для ознакомления, оттачивания навыков работы, либо для показа предварительных результатов начальству внутри компании. Если вы работаете в образовательном учреждении, вам потребуется специальная лицензия, которую мы предоставляем со значительной скидкой (запросить тут). Также учтите, создание персонального портфолио не входит в число разрешённых применений пробной версии. В этом случае вам понадобится приобрести «Фриланс»-лицензию.

Посмотрите эту страницу для получения дополнительной информации о преимуществах и ограничениях пробной версии «Вердж3Д».

Как мне получить техническую поддержку?

Услуга технической поддержки предоставляется вместе с корпоративными пакетами «Вердж3Д». Если у вас лицензия «Вердж3Д Фриланс» или «Малый Бизнес», воспользуйтесь форумом.

Основные вопросы

Что такое ВебГЛ?

ВебГЛ (англ. WebGL) — это технология для визуализации интерактивной 3Д-графики в браузерах. Графика отображается прямо на сайте, без необходимости что-либо устанавливать, причём неважно с какого устройства заходит пользователь: мобильного или настольного. Технология ВебГЛ требует высокой квалификации и ресурсов для реализации рендеринга даже простейших моделей, в силу чего требует использования трёхмерных движков, таких как «Вердж3Д». Скрывая сложности и экономя время, «Вердж3Д» позволяет не-программисту (художнику, инженеру или преподавателю) с легкостью создавать интерактивные веб-приложения.

В чем разница между ВебГЛ и ВебГПУ?

Обе эти технологии созданы для рендеринга интерактивной 3Д-графики в интернете. Разница между ними в том, что стандарт ВебГЛ уже зарекомендовал себя и поддерживается практически повсеместно, в то время как ВебГПУ считается экспериментальным и пока не получил широкой поддержки в браузерах.

Несмотря на то, что ВебГПУ призван стать низкоуровневой и более производительной альтернативой ВебГЛ, для типичных случаев использования «Вердж3Д» данная технология не дает каких-либо существенных преимуществ. В настоящее время движок рендеринга «Вердж3Д» использует ВебГЛ, но мы держим руку на пульсе и внимательно следим за разработкой ВебГПУ.

Что означают выражения «на стороне клиента» и «на стороне сервера»?

В контексте веб-разработки термин «на стороне клиента» означает, что что-то происходит в браузере, работающем на устройстве пользователя. «На стороне сервера» означает, что что-то выполняется удалённо, на веб-сервере.

Базовая модель клиент-сервер

Если мы говорим о том, что «Вердж3Д» это клиентское решение, это означает, что ваше 3Д-приложение работает в браузере, поэтому для его запуска и работы не требуется серверное программирование или использование сторонних платформ. Это ключевая особенность «Вердж3Д», которая делает его таким простым в использовании. Однако, поскольку мы говорим о веб-разработке, наличие примитивной серверной инфраструктуры всё же потребуется. В большинстве случаев эта функциональность ограничивается передачей файлов приложения в браузер.

Чтобы облегчить вам жизнь, мы уже подумали о серверной части, реализовав в «Вердж3Д» целых 3 готовых решения:

  1. Диспетчер приложений предоставляет сервер, который позволяет запускать приложения и использовать функцию Sneak Peek на локальном компьютере.
  2. «Вердж3Д Нетворк» — облачный сервер, который можно использовать для распространения приложений среди ваших пользователей одним щелчком мыши.
  3. «Вердж3Д для Ворд Пресса» — плагин, используемый для размещения «Вердж3Д»-приложений в «Ворд Прессе», самой популярной и простой в использовании системе управления контентом.

Кроме того, вы всегда можете использовать собственный веб-сервер, например Apache, Nginx, IIS, либо выбрать стороннюю хостинговую платформу, например «Яндекс Облако», Amazon AWS, Digital Ocean или GoDaddy.

Где я могу найти план разработки «Вердж3Д»?

«Вердж3Д» — это продукт ориентированный на клиентов, поэтому мы движемся в направлении их потребностей. В целом, наши основные приоритеты — электронная коммерция, электронное обучение и приложения виртуальной и дополненной реальности. Если у вас есть особая функция, которую вы хотели бы видеть в «Вердж3Д», мы можем добавить ее на контрактной основе. Свяжитесь с нами, чтобы обсудить детали.

Требуется ли мне подключение к интернету для работы с «Вердж3Д»?

Инструментарий «Вердж3Д» устанавливается на ваш локальный компьютер и в общем случае не требует подключения к интернету. Единственная функция, для которой требуется интернет — публикация готовых приложений в «Вердж3Д Нетворк».

Кроме того, чтобы помочь пользователям с нестабильным подключением к интернету, мы встроили локальные версии «Руководства пользователя» и «Справочника разработчика» в дистрибутив «Вердж3Д» (ищите их в подпапке docs внутри установочной папки).

Мое приложение не загружается, когда я открываю его в «Хроме», но оно работает при запуске из диспетчера приложений

Из-за политики безопасности браузеров, веб-приложения не могут получить доступ к данным, загруженным из другого домена, в том числе из локальной файловой системы. Следовательно, вы должны использовать диспетчер приложений (который поставляется с локальным сервером) для разработки, либо публиковать свои приложения на веб-сервере (в частности, с помощью «Вердж3Д Нетворк»).

Если вам нужно сделать настольное или мобильное приложение, вы можете преобразовать имеющийся проект с помощью диспетчера приложений. Для этого вам потребуется «Электрон» или «Кордова»).

Не удается загрузить приложение, когда я кликаю по файлу .html.

Ответ на этот вопрос смотрите здесь.

Могу ли я экспортировать свою сцену в ХТМЛ-файл?

Нет, «Вердж3Д» не предлагает опцию конвертации сцен в ХТМЛ-формат. Если вам нужен автономный исполняемый файл, вы можете преобразовать его с помощью «Электрона».

Работают ли приложения «Вердж3Д» в «Интернет Эксплорер» 11?

Отчасти да. Версии «Вердж3Д» до 4-ой включали в себя модуль совместимости с «Интернет Эксплорером», который активируется на панели создания приложения:

Включение поддержки браузера Интернет Эксплорер 11

Чтобы скачать нужную вам версию воспользуйтесь архивом закачек (англ.).

Можно ли запустить диспетчер приложений без «Блендера», «3дс Макса» или «Майи»?

Конечно, вы можете запустить диспетчер приложений в автономном режиме. Просто щелкните соответствующий значок Verge3D на рабочем столе или в меню «Пуск». Это откроет браузер, назначенный по умолчанию в системе, и автоматически перейдет в диспетчер приложений.

App Manager Launcher

Как скопировать пазлы в другой проект?

Для переноса пазлов воспользуйтесь библиотекой.

Не воспроизводятся звуки в «Ай ОС»...

Как это исправить, смотрите здесь.

Мое приложение тормозит. Как мне увеличить его производительность?

Ознакомьтесь с этим руководством по оптимизации ресурсов.

Как открыть консоль браузера?

«Гугл Хром»

Menu → More Tools → Developer Tools или

Клавиша F12 на «Виндоус»/«Линукс» или Option + ⌘ + J для «Мак ОС».

В окне Developer Tools, выберите закладку Console.

«Файрфокс»

Menu → Web Developer → Browser Console or

Клавиша F12 на «Виндоус»/«Линукс» или Shift + ⌘ + J для «Мак ОС».

«Эпл Сафари»

Включите Developer Menu в настройках (Advanced Tab), затем Develop → Show JavaScript Console или нажмите

Option + ⌘ + C shortcut.

«Майкрософт Эдж»

Menu → F12 Developer Tools или

Клавиша F12.

В окне Developer Tool выберите вкладку Console.

«Майкрософт Интернет Эксплорер»
Браузер устарел и больше не поддерживается в «Вердж3Д».
«Хром» для «Андроида»
Непосредственно отобразить консоль браузера на устройстве «Андроид» нельзя. Вместо этого используйте функцию отладки по УСБ.
«Сафари» на «Ай ОС» и «Айпад ОС»
Непосредственно отобразить консоль браузера на устройствах с «Ай ОС» и Айпад ОС» невозможно. Вам потребуется система с «Мак ОС» и веб-инспектор — специальный инструмент для доступа к содержимому консоли.

Приложение отлично работает в диспетчере приложений, но не работает при загрузке на удаленный сервер (например, в «Вердж3Д Нетворк»)

Среди возможных причин, вызывающих данную проблему:

  1. Локальная система нечувствительна к регистру файлов, а удаленная чувствительна.
  2. Вы неверно указали абсолютный путь к файлу .html или .gltf.

Пример первого случая: если вы используете «Виндоус» или «Мак ОС» (обе используют файловые системы нечувствительные к регистру), вы можете случайно переименовать файлы при экспорте. Но поскольку большинство серверов работают на «Линуксе» (включая «Вердж3Д Нетворк»), они используют файловые системы чувствительные к регистру, что может вызывать проблемы при получении файлов с сервера.

Например, вы создали приложение «Мой Конфигуратор». По умолчанию это приложение будет включать в себя следующие файлы:

Мой Конфигуратор.blend (или Мой Конфигуратор.max или Мой Конфигуратор.mb) Мой Конфигуратор.html Мой Конфигуратор.js Мой Конфигуратор.css Мой Конфигуратор.gltf Мой Конфигуратор.bin

Предположим, вы открываете файл сцены в инструменте моделирования (в «Виндоус» или «Мак ОС») и экспортируете его как мой конфигуратор.gltf.

Таким образом, папка вашего приложения будет выглядеть следующим образом (обратите внимание на регистр двух нижних строк):

Мой Конфигуратор.blend (или Мой Конфигуратор.max или Мой Конфигуратор.mb) Мой Конфигуратор.html Мой Конфигуратор.js Мой Конфигуратор.css мой конфигуратор.gltf мой конфигуратор.bin

Если вы откроете основной «Ява Скрипт»-файл вашего приложения (Мой Конфигуратор.js в нашем примере), вы увидите, что он пытается загрузить Мой Конфигуратор.gltf, а не мой конфигуратор.gltf. Это совершенно нормально для «Виндоус» или «Мак ОС», поскольку эти два имени представляют один и тот же файл! Однако, когда вы загрузите ваше приложение на сервер, оно не запустится.

Чтобы избежать этого, всегда сохраняйте и экспортируйте файлы в правильном регистре. Альтернативным решением будет переименовать файл в главном .js файле приложения.

Второй причиной данной ошибки может быть указание абсолютного пути к загружаемому ресурсу в вашем js-файле, например:

/applications/моё_приложение/моё_приложение.gltf

или

http://localhost:8668/applications/моё_приложение/моё_приложение.gltf

В таком случае укажите относительный путь, чтобы устранить проблему:

моё_приложение.gltf

или

./моё_приложение.gltf

Как правильно переименовать приложение?

Перейдите в папку с приложениями, найдите и переименуйте папку, содержащую ваше приложение (например, «моё_приложение» в «крутая_визуализация»).

Не путайте имя папки с названием, отображаемым в диспетчере приложений. Например, приложение «моё_приложение» получает заголовок «Моё Приложение». Этот заголовок генерируется автоматически путем замены символов подчеркивания пробелами и перевода начальных символов слов в верхний регистр.

Если вы также хотите переименовать файлы внутри вашего приложения, сделайте следующее:

  1. Перейдите в папку приложения.
  2. Назначьте новые имена всем ресурсам html/css/js/gltf/bin/blend/max/ma/mb (подробнее см. здесь). Не трогайте файлы v3d.js, visual_logic.xml и visual_logic.js!
  3. Откройте и переэкспортируйте сцены, чтобы обновить пути внутри экспортированных ГЛТФ-ресурсов.
  4. Откройте основной .html-файл (например, моё_приложение.html) и обновите следующие пути .js/.css: <script src="моё_приложение.js"></script> <link rel="stylesheet" type="text/css" href="моё_приложение.css"> Допустим, вы хотите переименовать «моё_приложение» в «крутая_визуализация». В этом случае пути становятся: <script src="крутая_визуализация.js"></script> <link rel="stylesheet" type="text/css" href="крутая_визуализация.css">
  5. Откройте основной .js-файл (например, моё_приложение.js) и обновите следующую строку, указав предпочтительное имя приложения: sceneURL: params.load || 'моё_приложение.gltf', Допустим, вы хотите переименовать моё_приложение в крутая_визуализация. В этом случае строка SceneURL будет выглядеть так: sceneURL: params.load || 'крутая_визуализация.gltf',
  6. Запустите приложение в диспетчере приложений. Если приложение не работает, откройте консоль браузера, чтобы проверить наличие ошибок.

Кроме того, не забудьте обновить метаданные в переименованном приложении. Информацию о том, как это сделать, смотрите здесь.

Моделирование и создание контента

Что такое ГЛТФ?

ГЛТФ (glTF, Graphics Language Transmission Format) - это универсальный формат файлов, используемый в интернете для хранения и обмена 3Д-визуализацией. Данный формат используется в «Вердж3Д» и другом программном обеспечении для работы с графикой. Он может хранить не только модели, но и целые сцены, включая геометрические данные (меши), положение объектов, анимацию, данные камеры, источники света, материалы, текстуры и другую информацию.

Поскольку формат ГЛТФ определяет только базовый набор функций, мы дополнили его нашими собственными расширениями (имеют префикс S8S). Подмножество ГЛТФ «Вердж3Д» поддерживает не только основные ПБР-материалы, но также материалы на основе нод «Блендера», «3дс Макса» или «Майи», камеры, источники света, окружающую среду и другие вещи, что упрощает и повышает эффективность рабочих процессов.

В «Вердж3Д» мы используем версию 2.0 формата ГЛТФ. Старая версия стандарта 1.0 не поддерживается.

В каких случаях следует использовать материалы, совместимые с ГЛТФ?

Основные отличия ГЛТФ-совместимых материалов от штатных, основанных на нодах «Блендера», «3дс Макса» и «Майи»:

Главный недостаток ГЛТФ-материалов заключается в том, что вы не сможете использовать «родную» систему материалов, предоставляемую пакетом моделирования. Таким образом, вы не сможете получить тот же уровень контроля над разработкой материала, а следовательно достичь сопоставимого качества визуализации.

Ознакомьтесь со следующими руководствами для получения дополнительной информации:

Какой 3Д-формат лучше, .gltf или .glb?

Это два варианта одного и того же формата ГЛТФ 2.0. Контейнер *.gltf более популярен и эффективен, поскольку он хранит только метаданные (параметры ваших сцен/объектов/материалов и т. д.). Все внешние данные, такие как геометрия, анимация и текстуры, хранятся отдельно (в файлах *.bin, *.jpeg, *.png).

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

Я ничего не вижу, когда экспортирую свою сцену в «Вердж3Д».

Это может произойти по разным причинам:

Какие 3Д-форматы можно использовать в «Вердж3Д»?

С помощью сторонних библиотек импорта «Вердж3Д» может загружать различные 3Д-форматы. Тем не менее, предпочтительным способом создания трехмерного веб-контента является использование формата ГЛТФ 2.0, который поддерживается «Вердж3Д»-плагином для «Блендера», «3дс Макса» или «Майи».

Также скрипт стандартного шаблона приложения основан на классе App, который поддерживает загрузку файлов исключительно в формате ГЛТФ.

Поддерживаются ли пакеты «Майя ЛТ» и «Майя Креатив»?

К сожалению нет. Урезанная версия «Майя ЛТ» не позволяет запускать скрипты на «Питоне», поэтому мы не можем реализовать программу экспорта для данного пакета моделирования.

То же самое относится к пакету «Майя Креатив», который вообще не имеет возможности запуска сторонних плагинов.

Есть ли планы по поддержке «Максон Синема 4Д»? «Скетчап»?

Смотрите ответ на этот вопрос на нашем форуме (англ.).

Как преобразовать модель «Солид Воркс» в ВебГЛ с помощью вашего программного обеспечения?

Начиная с версии 2016 года, «3дс Макс» поддерживает ресурсы «Солид Воркс». Просто импортируйте файл «Солид Воркс» в «3дс Макс», а затем экспортируйте в ВебГЛ, как любую другую максовскую сцену.

Примечание. Обратите внимание на оптимизацию геометрии, так как САПР-модели довольно тяжелы для интернета. Настройте параметр Mesh Resolution в диалоговом окне Import Settings при импорте файлов. Вы также можете использовать модификаторы «3дс Макса», чтобы уменьшить количество полигонов в ваших моделях.

Диалог импорта из Солид Воркс в 3дс Макс

Как создать интерактивную браузерную визуализацию на основе модели из «Ревита»?

У вас есть два варианта:

  1. Экспортируйте модель «Ревит» в формат FBX, а затем импортируйте в «3дс Макс», «Майю» или «Блендер».
  2. Используйте импортер «Ревит», который изначально поддерживается в «3дс Максе». Не забудьте активировать параметр Autodesk Revit Interoperability во время установки «3дс Макса», чтобы включить эту функцию.
Импорт Ревит-модели в 3дс Макс

В любом случае сохраняйте оптимальную геометрию. Мы рекомендуем использовать 100-500 тысяч полигонов для всей сцены.

Электронная коммерция

Как мне сделать 3Д-конфигуратор с помощью «Вердж3Д», учитывая что мои навыки веб-разработки крайне ограничены?

В таком случае мы рекомендуем взять одну из демок, поставляемых с «Вердж3Д», а затем изменить ее под свои нужды. Следующие три приложения в нашем магазине ассетов вообще не потребуют написания кода:

Кольцо
Самый простой пользовательский интерфейс, основанный на объектах, связанных с камерой.
Кресло
Поставляется с более продвинутым макетом на основе ХТМЛ-вёрстки, созданной в визуальном редакторе «Вебфлоу». Содержит рабочий прототип корзины типичного интернет-магазина.
Скутер
Самое продвинутое приложение, позволяющее настроить более миллиона разных комбинаций. Как и в случае с «Креслом», пользовательский интерфейс был создан с помощью редактора «Вебфлоу».

Кроме того, если на вашем сайте используется система управления контентом «Ворд Пресс», обратите внимание на расширение WooCommerce Composite Products. С его помощью вы сможете создавать 3Д-веб-конфигураторы максимально быстро.

Требуется создать 3Д-интернет-магазин с минимальным бюджетом. Что посоветуете?

Сначала вам нужно создать 3Д-визуализацию продуктов в «Блендере», «3дс Максе» или «Майе». Далее есть 2 варианта:

Как мне сделать базовую систему CPQ (конфигурация, цена, предложение) с настраиваемыми продуктами, показываемыми в 3Д?

Мы рекомендуем следующий подход:

Имеется бюджет на разработку 3Д-сайта, но нет соответствующих компетенций. Что можете предложить в этом случае?

Мы предлагаем вам связаться с нашими партнерами, среди которых студии и фрилансеры, имеющие большой опыт разработки трёхмерных сайтов.

Вы также можете разместить ваше предложение в соответствующем разделе нашего форума.

Я разработал платный «Вердж3Д»-плагин, как лучше организовать его продажи?

Супер! Для продажи плагина вы можете выбрать одну из следующих торговых площадок:

Програмиирование с помощью пазлов

Какие пазлы стоит изучить в первую очередь?

Список довольно короткий:

Данная функциональность используется в демо-приложении Simple Configurator (исходные файлы доступны в магазине ассетов).

Как защитить моё приложение паролем?

Если вы не хотите, чтобы ваше приложение показывалось до финальной версии, вы можете использовать следующие пазлы, чтобы защитить его паролем:

Защита приложения WebGL паролем

Измените «123456» на что-нибудь более безопасное.

Этот метод не является на 100% надежным и может быть легко взломан. Более правильным способом ограничения доступа к вашему приложению будет использование HTTP-аутентификацию, либо авторизации на сервере.

Как сделать управление от первого лица на мобильных устройствах?

По сути вам нужно создать дополнительные элементы, выровненные по экрану, которые будут элементами управления вашим персонажем. Минимальный набор таких элементов — вперед-назад (так как вращение осуществляется касанием/перетаскиванием экрана).

Таким образом, у вас есть два способа отрисовки элементов управления на мобильном устройстве:

  1. Используя элементы ХТМЛ, расположенные поверх 3Д-сцены. Подробнее об этом методе можно узнать здесь.
  2. С помощью плоскостей или подобных 3Д-объектов, связанных с камерой. Для этого вам нужно приперентить их к камере в пакете моделирования.

Создав элементы управления, используйте пазл change local transform, чтобы переместить камеру. Например, для перемещения вперед/назад вы можете использовать следующую логику:

Пазлы для перемещения вперед-назад

Чтобы реализовать боковое перемещение персонажа, используйте тот же пазл, но двигайтесь по оси X вместо Z.

Почему пазлы show/hide не работают для аннотаций?

Поскольку «Вердж3Д» перемещает и контролирует видимость объектов аннотаций самостоятельно, скрыть/показать их не получится.

Вместо этого вам следует использовать ЦСС-свойство display для элемента аннотации, на который ссылается его идентификатор. Например, чтобы скрыть/показать аннотацию с идентификатором элемента poi1, вы можете использовать следующие два пазлы:

Пазлы для отображения/скрытия аннотаций

По сути, установка display в none скрывает аннотацию, а установка display в block снова её показывает.

Можно ли отключить (скрыть) луч/прицел в режиме виртуальной реальности?

Используйте пазл get controller property, чтобы получить объект луча/прицела и hide для его сокрытия:

Пазлы для отображения/скрытия прицела луча [привязка:how_to_clone_objects_recursivity]

Как рекурсивно клонировать объекты?

Используйте следующую «Ява Скрипт»-функцию:

Рекурсивное клонирование объектов с помощью визуальных блоков

Вопросы по программированию

Совместим ли «Вердж3Д» с фреймворком «Три Джей Эс»?

«Вердж3Д» предоставляет ограниченную совместимость с АПИ фреймворка «Три Джей Эс», что может существенно упростить портирование имеющегося кода. Тем не менее, подобный подход не является оптимальным. Вместо этого мы рекомендуем создавать большую часть контента в пакете 3Д-моделирования и использовать пазлы.

Как рассчитать использование памяти текстурой?

Для хранения обычной (не ХДР) текстуры в памяти графического процессора вам потребуется не менее

ширина x высота x 4 x 1.333 байт

Где ширина, высота - размеры текстуры в пикселях, 4 - количество байтов на пиксель, а 1,333 - дополнительная память, необходимая для отображения текстуры. Например, текстура размером 2048x2048 будет занимать примерно 22,4 Мб памяти графического процессора. Если вам нужно сохранить HDR-текстуру, умножьте это значение на 2.

Также, в зависимости от реализации ВебГЛ, браузеры могут хранить по крайней мере одну копию текстуры в обычной (системной) памяти.

Окно моего приложения бесконечно растет на устройствах «Ай ОС». Как это исправить?

Если вы встраиваете приложение «Вердж3Д» в элемент iframe, вы можете столкнуться с определенной проблемой на устройствах «Ай ОС», из-за которой окна iframe будут постоянно увеличиваться в размере за пределами окна браузера. Это, в свою очередь, может привести к сбою ВебГЛ.

Чтобы решить эту проблему, вы можете использовать код, который изменяет размер iframe в соответствии с телом страницы (body), предотвращая выход указанного iframe за его пределы.

<script> if (/(iPad|iPhone|iPod)/g.test(navigator.userAgent)) { var iframe = document.getElementById('myIframe'); function resize() { iframe.style.width = getComputedStyle(document.body).width; iframe.style.height = getComputedStyle(document.body).height; iframe.setAttribute('scrolling', 'no'); } iframe.addEventListener('resize', function(e) { resize(); }); resize(); } </script>

Элементы управления с клавиатуры не работают для приложения, встроенного в iframe.

Это происходит, когда в фокусе находится какой-то другой ХТМЛ на вашей странице. Чтобы решить проблему, попробуйте следующий код: document.getElementById("my_iframe_id").focus(); Где my_iframe_id — ID нужного элемента iframe.

На пазлах этот же код будет выглядеть так:

Все еще есть вопросы?

Задавайте их на нашем форуме!