Аудио элемент не будет отображаться / воспроизводиться внутри iframe в Firefox - PullRequest
5 голосов
/ 19 декабря 2011

У меня есть этот фрагмент HTML5, который позволяет пользователю щелкать и проигрывать аудио:

<audio controls>
    <source src="cell.ogg">
    <source src="cell.mp3">
    <source src="cell.m4a">
</audio>

Это отлично работает в FF 8 на OS X Lion. Появляются элементы управления аудиопроигрывателем, я могу нажать кнопку воспроизведения, и он воспроизводит версию ogg.

Но если я помещу содержащий файл в iframe другого документа HTML5 (оба из локальной файловой системы; нет проблем с несколькими источниками), он не будет работать. Остальная часть HTML отображается нормально, но Firefox действует так, как будто он не поддерживает ни один из форматов мультимедиа.

Вот функция, которую я использую для добавления страницы в iframe:

function postContentToIframe(content)
{
    var iframe = $("#displayContents")[0].contentWindow.document;
    iframe.open(); iframe.close(); // must open and close document object to start using it!
    $("body", iframe).append(content).hide().fadeIn("slow");
    return;
}

Вот как FF отображает это.

enter image description here

Почему? И как мне это исправить? ТИА.

1 Ответ

0 голосов
/ 19 декабря 2011

Тайна раскрыта. Это была проблема каталога / относительного URL. Базовый HTML-файл (с элементом iframe) находился в другом каталоге, нежели добавленный HTML-файл (содержимое iframe) и аудиофайлы. Таким образом он не мог найти аудио файлы.

Решение: либо поместите все файлы в один каталог, либо (лучше) используйте абсолютные URL-адреса вместо относительных URL-адресов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...