JavaScript: Изменение src-атрибута тега embed

Я видел эту проблему при создании сценариев в Windows env и затем переносе для работы в среде Unix.

Попробуйте запустить это в скрипте:

http : //linuxcommand.org/man_pages/dos2unix1.html

Обновлена ​​ссылка:

http://dos2unix.sourceforge.net/

Или просто перезапишите скрипт в вашем Unix env, используя vi и test.

Unix использует разные строки и возвращает каретки, поэтому не может прочитать файл, созданный в Windows. Следовательно, он видит ^ M как незаконный символ.

Если вы хотите записать файл в Windows и затем переместить его, убедитесь, что ваш редактор настроен на создание файлов в формате UNIX.

В блокноте ++ в правом нижнем углу экрана отображается формат документа. По умолчанию он скажет Dos\Windows. Чтобы изменить его, перейдите к

  • settings-> preferences
  • вкладке каталога нового документа / по умолчанию
  • выберите формат как unix и close
  • создать новый документ

10
задан Mike 22 March 2010 в 15:58
поделиться

4 ответа

Вам следует удалить элемент embed и повторно вставить его с новым набором параметров src .

embed like object и аналогичные - это два элемента, которые из-за своего особого использования (видео, аудио, flash, activex, ...) в некоторых браузерах обрабатываются иначе, чем обычные Элемент DOM. Таким образом, изменение атрибута src может не вызвать ожидаемого действия.

Лучше всего удалить существующий объект embed и вставить его заново. Если вы напишете какую-то функцию-оболочку с атрибутом src в качестве параметра, это будет легко

21
ответ дан 3 December 2019 в 15:51
поделиться

Добавьте отделение к тегу embed,

 <div id="pdfId">
    <embed src="/resources/audio/_webbook_0001/embed_test.mp3" type="audio/mpeg" id="audio_"/>
</div>

В сценарии:

            var pdfId = document.getElementById("pdfId");
            pdfId.removeChild(pdfId.childNodes[0]);
            var embed = document.createElement('embed');
            embed.setAttribute('src', embedUrl);
            embed.setAttribute('type', 'audio/mpeg');
            pdfId.appendChild(embed);
0
ответ дан 3 December 2019 в 15:51
поделиться

var element = document.getElementById('element-embed');
changeSrcEmbed(element,'https://coccoc.com');
function changeSrcEmbed(element, src) {
    var id = element.id;
    element.src = src;
    var embedOld = document.getElementById(id);
    var parent = embedOld.parentElement;
    var newElement = element;
    document.getElementById(id).remove();
    parent.append(newElement);
}
<embed id="element-embed" style="width:1100px; height: 700px;">
-1
ответ дан 3 December 2019 в 15:51
поделиться

JQuery следует объявлению в стиле CSS:

Вместо выполнения

function onFileSelected(file, directory) {
   jQuery('embed#audio_file').attr('src', '/resources/audio/'+directory+'/'+file);
};

Скорее выполняйте

function onFileSelected(file, directory) {
   jQuery('#audio_file').attr('src', '/resources/audio/'+directory+'/'+file);
};

Таким образом, jQuery извлекает только объект id = "audio_file".

1
ответ дан 3 December 2019 в 15:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: